Archief - PHP: Rare error

Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.

HelloApu

Legacy Member
Error:
Parse error: parse error, unexpected $ in /lns/VanG/web/kevinvg.be/gwek/admin/nieuwsbrief2.php on line 24

CODE:
PHP:
<html>
<head>
<link rel="stylesheet" type="text/css" href="frame.css">
</head>
<body>
<?php
include('connect.php');
if( 
empty($_brief)) { echo "Gelieve een mail in te vullen."; 
} else {
if( $_taal == "Nederlands" ) {
$query = mysql_query("SELECT email, taal FROM nieuwsbrief WHERE taal = Nederlands");
while ( $maillen = mysql_fetch_array($query)) {
mail( $maillen[email] , "Gwek nieuwsbrief" , $_brief ); 
}
} else {
$query = mysql_query("SELECT email, taal FROM nieuwsbrief WHERE taal = English");
while ( $maillen = mysql_fetch_array($query)) {
mail( $maillen[email] , "Gwek newsletter" , $_brief ); 
}
}
?>
</body>
</html>
Snap het niet :s:s

icerulez

Legacy Member
$mailen['email'] enz... je moet aanhalingstekens gebruiken dacht ik. EN leer ook eens gestructureerd coden. Als jij ooit een } vergeet ga je lang mogen zoeken.

DarkBone

Legacy Member
WHERE kolom = 'waarde'

AANHALINGSTEKENS

idem voor uw arrays

En als ge nu es mooi met intanding enzo zou werken dan zag je meteen je fout:

PHP:
<html> 
<head> 
<link rel="stylesheet" type="text/css" href="frame.css"> 
</head> 
<body> 
<?php 
include('connect.php'); 
if(empty($_brief))
{
echo "Gelieve een mail in te vullen."; 
}
else
{ 
if($_taal == "Nederlands")
{ 
$query = mysql_query("SELECT email, taal FROM nieuwsbrief WHERE taal = 'Nederlands'"); 
while ($mailen = mysql_fetch_array($query))
{ 
mail($mailen['email'], "Gwek nieuwsbrief", $_brief); 
}
}
else
{
$query = mysql_query("SELECT email, taal FROM nieuwsbrief WHERE taal = 'English'"); 
while ($mailen = mysql_fetch_array($query))
{ 
mail($mailen['email'], "Gwek newsletter", $_brief); 
}
} 
}
?> 
</body> 
</html>

Het laatste gekrulde haakje stond er niet.
En waarom werk je niet met WHERE taal = '" . $_taal . "' ??
Aangezien die toch krak dezelfde waarde bevat.

Nullius

Legacy Member
Leer coden met wat structuur :)
Kan je veel werk uitsparen als je zo'n error krijgt.

BTW: UltraEdit32 is handig proggie, die duidt automatisch de juiste } aan als je op een { gaat staan. Handig proggie vind ik.

Je ziet maar :)

HelloApu

Legacy Member
Najah, ik heb geen handboek ofzo dus ik weet eigenlijk niet wat de juiste manier is :s ik heb er al veel gezien majah, ik doe wat mij het best lijkt :)

Squall-sX-

Legacy Member
HelloApu zei:
Najah, ik heb geen handboek ofzo dus ik weet eigenlijk niet wat de juiste manier is :s ik heb er al veel gezien majah, ik doe wat mij het best lijkt :)

Het is gewoon handig van te indenten.
Dus ge begint met iets, bijvoorbeeld een if, en ge indent de volgende regels:
PHP:
<?
  if (iets==iets) {
    volgende code;
  }
?>

zo bijvoorbeeld. Een tablengte van 2 spaties is goed genoeg.

PC_Freak

Legacy Member
Squall-sX- zei:
Het is gewoon handig van te indenten.
Dus ge begint met iets, bijvoorbeeld een if, en ge indent de volgende regels:
PHP:
 <? 
   if (iets==iets) { 
     volgende code; 
   } 
 ?>

zo bijvoorbeeld. Een tablengte van 2 spaties is goed genoeg.
Nog een goede tip: gebruik nooit short-open tags tenzij je het op een eigen host (lees: je eigen server) gebruikt en je zeker weet dat je geen problemen zal krijgen met ASP of XML.

Gebruik zoveel mogelijk canonische tags (<?php /* vanalles */ ?>). Ik zie zelfs geen reden om daar van af te wijken.

DarkBone

Legacy Member
Nog iets... ik ben persoonlijk voorstander van de java opmaak:

PHP:
<?php
	if (you.areAnIdiot())
	{
		echo 'HaHaHaHa HaHa Haaa!';
	}
?>

Curly braces komen met andere woorden altijd op een nieuwe lijn terecht :)

HelloApu

Legacy Member
Nu krijg ik hier nog een error en vind de fout niet in men code, mss weeral iets dom maar ik vind het niet :s

=>
Warning: fputs(): supplied argument is not a valid stream resource in /lns/VanG/web/kevinvg.be/vgphonetools/stats/stats.php on line 18

Ik krijg die voor alle fputs en fcloses :s

Code:
PHP:
<?PHP
include("connect.php");
$client_ip = ( !empty($_SERVER['HTTP_X_FORWARDED_FOR']) ) ? $_SERVER['FORWARDED_FOR'] : $_SERVER['REMOTE_ADDR'];
$query = mysql_query("SELECT ip FROM ". date("M") ." WHERE ip = '$client_ip'"); 
$resultaat = mysql_fetch_array($query, MYSQL_NUM); 
 if ( empty($resultaat[0]) ) { 
 	include("b.dat");
	$b++;
	$file == fopen ("b.dat","w" );
	fputs($file, "<?PHP $");
	fputs($file,"b = $b ?>");
	fclose($file);
 }
 	include("a.dat");
 	$a++;
 	$fopen2 == fopen("a.dat","w");
	fputs( $fopen2 , "<?PHP $");
	fputs( $fopen2 , "a = $a ?>");
	fclose( $fopen2 );
	echo $b ." unieke bezoekers en ". $a ."pagevieuws.";
	echo date("M");	
?>
Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.
Terug
Bovenaan