Hallo allemaal.

Ik ben redelijk nieuw op het PHP-gebied. Nu probeer ik een inlog-script te verbouwen. Tot nu toe gaat het redelijk, maar ik stuit op een foutmelding. Deze foutmelding krijg ik wanneer ik een gebruiker probeer te registeren. Hiertoe vul ik het registratie formulier in (signup.php), dat vervolgens verwerkt dient te worden (signupchk.php).

Parse error: syntax error, unexpected T_VARIABLE in ... on line 14

Het vreemde is, dat line 13 (exact dezelfde codering) geen foutmelding geeft. Ik heb diverse forums bekeken, maar die geven niet echt antwoord. Ik heb elke 'name ="x" vergeleken om er zeker van te zijn dat die overal overeenkomt (password1)

Wie kan me helpen?!


<?
include "config.php"; // database connection details stored here
// Collect the data from post method of form submission // 
$badge#=$_POST['badge#'];
$password1=$_POST['password1'];
$password2=$_POST['password2'];
$email=$_POST['email'];
$extension=$_POST['extension'];
$first_name=$_POST['first_name'];
$last_name=$_POST['last_name'];
$line_of_business=$_POST['line_of_business'];
$function_code=$_POST['function_code'];
$access_lvl=$_POST['access_lvl'];
$active=$_POST['active'];
$todo=$_POST['todo'];
?>


Een stuk html


<?
if(isset($todo) and $todo=="post"){

$status = "OK";
$msg="";

// if userid is less than 3 char then status is not ok
if(!isset($userid) or strlen($userid) <3){
$msg=$msg."User id should contain 2 or more characters!<BR>";
$status= "NOTOK";}					

if(!ctype_alnum($userid)){
$msg=$msg."User id should contain numeric characters only!<BR>";
$status= "NOTOK";}					


if(mysql_num_rows(mysql_query("SELECT userid FROM agents WHERE userid = '$userid'"))){
$msg=$msg."Userid already exists. Duplicate userid´s not allowed.<BR>";
$status= "NOTOK";}					

if(mysql_num_rows(mysql_query("SELECT email FROM agents WHERE email = '$email'"))){
$msg=$msg."This email address is allready registered. Duplicate e-mail address not allowed. <br />If you forgot your password you can retrieve it by using forgot password link.<BR>";
$status= "NOTOK";}					

if ( strlen($password1) < 4 ){
$msg=$msg."Password must be more than 4 characters long<BR>";
$status= "NOTOK";}					

if ( $password1 <> $password2 ){
$msg=$msg."Both passwords are not matching<BR>";
$status= "NOTOK";}					

if($status<>"OK"){ 
echo "<font face='Verdana' size='2' color=red>$msg</font><br><input type='button' value='Retry' onClick='history.go(-1)'>";
}else{ // if all validations are passed.
$password1=md5($password1); // Encrypt the password before storing
if(mysql_query("insert into agents(badge#,password1,email,extension,first_name,last_name,line_of_business,function_code,access_lvl,active) values('$badge#','$password1','$email','$extension','$first_name','$last_name','$line_of_business','$function_code','$access_lvl','$active')")){

echo "<font face='Verdana' size='2' color=green>Welcome, You have successfully signed up<br><br><a href=login.php>Click here to login</a><br></font>";
}else{
echo "<font face='Verdana' size='2' color=red>There is some database problem, Please contact site admin<br><br><a href=login.php>Click here to login</a><br></font>";

}
}
}
?>


[size=xsmall]Toevoeging op 02/07/2012 04:09:11:[/size]

Fout gevonden...

Het struikelde over $badge#=$_POST['badge#'];
Na het verwijderen van de # ging het prima!

Waarom gebruik je daar uberhaupt een hekje? Of was het een typo?

Reageren