Kan iemand vertellen wat ik fout heb in het volgende script:

<?

require("config.php");

// Verwijder deze comment en de onderstaande regel als je een eigen stylesheet gebruikt...
echo "<link rel=\"stylesheet\" content=\"text/css\" href=\"style.css\">";

if(!$_POST['submit']){
?>
Velden met een * zijn verplicht...
<form method="POST" action="<? echo $PHP_SELF ?>">
<input type="hidden" name="submit" value="1">
Naam:<br>
<input type="text" name="naam" size="30"> *<br>
Email adres:<br>
<input type="text" name="email" size="30"> *<br>
Homepage:<br>
<input type="text" name="homepage" size="30" value="http://"><br>
Woonplaats:<br>
<input type="text" name="woonplaats" size="30"><br>
Geboortedatum ( dd-mm-jjjj ):<br>
<input type="text" name="geb1" size="2" maxlength="2"> -
<input type="text" name="geb2" size="2" maxlength="2"> -
<input type="text" name="geb3" size="4" maxlength="4"><br>
Hobby's:<br>
<textarea name="hobbys" rows="3"></textarea><br>
Favo drankje(s):<br>
<input type="text" name="drank"><br>
Favo artiest(en):<br>
<input type="text" name="artiest"><br>
Favo film:<br>
<input type="text" name="film"><br>
Geslacht:<br>
<select size="1" name="geslacht">
<option value="Man">Man</option>
<option value="Vrouw">Vrouw</option>
<option value="Weet ik niet">Weet ik niet</option>
</select><br>
Relatie:<br>
<select size="1" name="relatie">
<option value="1">Ja</option>
<option value="0">Nee</option>
</select><br>
Privé- berichten:<br>
<select size="1" name="pm">
<option value="1">Aan</option>
<option value="0">Uit</option>
</select><br>
<br>
Gewenste gebruikersnaam:<br>
<input type="text" name="gebruikersnaam" size="25"> *<br>
Wachtwoord:<br>
<input type="password" name="wachtwoord" size="12" maxlength="12"> *<br>
Wachtwoord [ bevestig ]:<br>
<input type="password" name="wachtwoord2" size="12" maxlength="12"> *<br>
<input type="submit" value="Aanmelden"> <input type="reset" value="Wis velden"></p>
</form>
<?
}
else{
$query = mysql_query("SELECT * FROM members WHERE gebruikersnaam = '$gebruikersnaam'");
$result = mysql_num_rows($query);

if($result){

?>

Deze gebruikersnaam is al in gebruik<br><br>
<a href="javascript:history.go(-1)">Ga terug</a>

<?
}
else{
if($naam AND $email AND $gebruikersnaam AND $wachtwoord){

if($wachtwoord!=$wachtwoord2){
echo "De wachtwoorden zijn niet gelijkt aan elkaar";
}
else{
$geboortedatum = "$geb1-$geb2-$geb3";

$tekens=array("a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z","0","1","2","3","4","5","6","7","8","9","A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z");
$activeringscode;
for($c = 0; $c < 12; $c++){
srand((double)microtime() * 100000000000000);
$pass = $tekens[rand(0, 62)];
$activeringscode=$activeringscode.$pass;
}

if($actmail=="1"){
$activeringscode = 0;
}
elseif($actmail=="2"){
$activeringscode = 1;
}

mysql_query("INSERT INTO members (gebruikersnaam,wachtwoord,naam,email,homepage,geboortedatum,woonplaats,favodrankje,favoartiest,favofilm,hobbys,geslacht,relatie,geactiveerd,pm) VALUES ('$gebruikersnaam','$wachtwoord','$naam','$email','$homepage','$geboortedatum','$woonplaats', '$drank', '$artiest','$film','$hobbys','$geslacht','$relatie','$activeringscode','$pm')") or die(mysql_error());

$bericht = "Via onze website heb jij (als het goed is) een aanmeldingsformulier ingevuld waarmee je een lid van onze
website wordt, als dit niet het geval is kun je dit mailtje het beste verwijderen.\n\nAls je je wel wilt aanmelden voor een
account op onze website moet je op de onderstaande url klikken om je account te activeren:\n\n
<a href=\"$script_url/activeer.php?activate=$activeringscode\">$script_url/activeer.php?activate=$activeringscode</a>\n\nMet vriendelijke groet
Webmaster $webmaster_url";

if($actmail=="1"){
mail("$webmaster_email","Activeer nu je account $naam !","$bericht");
echo "De aanmelding is succesvol gelukt, er word nu een mailtje verstuurd aan <b>$email</b> waarin de activerings url staat...";
}
elseif($actmail=="2"){
echo "Je account is geactiveerd, je kunt nu inloggen...";
}
else{
echo "De aanmelding is gelukt, het is nu aan de webmaster om te beslissen of hij/zij je accepteerd als member van deze website...";
}
}
}
else{

print 'Je hebt niet alle verplichte velden ingevuld...<br><br>
<a href="javascript:history.go(-1)">Ga terug</a>';

}
}
}
print "<br><br><a href='index.php'>Terug</a>";
?>


Dit script word uitgevoerd op http://mail.dhawis.nl/aanmelden.php
helemaal geen, dat is het probleem
Wat is nou je probleem? ik zit hier niet 24/7 om voor iedereen scriptjes te debuggen die ze niet zelf gemaakt hebben...

Wat gebeurd er als je error reporting op all zet?
error report staat al op all, en hij geen geen error terug, zoals je kan zien als je de pagina bekijkt.

http://mail.dhawis.nl/aanmelden.php
je zegt dat je een probleem hebt met dit script maar je zegt er niet bij welk probleem.
Wij hebben niet altijd zoveel tijd om heel je script na te kijken op fouten.

als je zegt wat je probleem is kunnen we het sneller vinden.
Je kan items uit een formulier niet simpelweg aanroepen met '$gebruikersnaam'.

Dat moet zijn: $_POST['gebruikersnaam'];
aa

hij zegt dat je niet alle verplichte velden hebt ingevuld. Maar ik heb alle velden met een * ingevuld.

Dus daar zit het probleem
zodra ik het form heb ingevuld, op submit druk,
heeft het script de waarden niet meer in de variabelen staan. hierdoor kan het niet doorgestuurd worden naar de db
op het moment dat je alles invult, dan geeft hij aan dat het niet het geval is.

helaas kan ik het niet duidelijker omschrijven
<?=$_SERVER['PHP_SELF'] ?>

zo zijn er allemaal kleine dingetjes die wel beter kunnen
En die variabelen staan er niet, omdat die er nooit gestaan hebben..

Je kan items uit een formulier niet simpelweg aanroepen met '$gebruikersnaam'.

Dat moet zijn: $_POST['gebruikersnaam'];

Reageren