kan iemand me even helpen met dit script ik kan de fout niet vinden

het script werkt word juist toegevoegd aan db
word niet toegevoegd als er iets niet juist is

onderwerp zegt het al de error word niet weergegeven pint er dus niets van :s

<?

$error == 0;

$user_ip = $_SERVER['REMOTE_ADDR'];

$gbnaam = $_POST['gbnaam'];
$gbnaam = str_replace(' ','_',$gbnaam);

if ($gbnaam){

$paswoord = $_POST['paswoord'];
$paswoord2 = $_POST['paswoord2'];
$email = $_POST['email'];
$profiel = $_POST['profiel'];


if (!$paswoord){
$errorpassleeg == 1;
$error++;
}
if (!$paswoord2){
$errorpassleeger == 1;
$error++;
}
if (!$email){
$erroremailleeg == 1;
$error++;
}
if (!$profiel){
$errorprofielleeg == 1;
$error++;
}


function email_validator($email)
{
if (eregi("^[0-9a-z]([-_.]?[0-9a-z])*@[0-9a-z]([-.]?[0-9a-z])*\\.[a-z]{2,4}$",$email))
{
$valid = "yes";
}
else
{
$valid = "no";
}
return $valid;
}
$check_email = email_validator($email);

if ($check_email == "yes"){

} else {
$errormailongeldig == 1;
$error++;
}
if ($paswoord2 === $paswoord){

} else {
$errorpasszelfde == 1;
$error++;
}

$query = "SELECT email FROM member_login WHERE email = '$email'";
$resultaat = mysql_query($query);
$rij = mysql_fetch_array($resultaat);
while ($rij) {

$error++;
$errormailbestaal == 1;

$rij = mysql_fetch_array($resultaat);
}
$query = "SELECT email FROM member_login WHERE gbnaam = '$gbnaam'";
$resultaat = mysql_query($query);
$rij = mysql_fetch_array($resultaat);
while ($rij) {

$error++;
$errorloginbestal == 1;

$rij = mysql_fetch_array($resultaat);
}

if ($error == 0){

$query = "INSERT INTO `member_login` ( `gbnaam` , `paswoord` , `email` , `profiel` , `ip` ) VALUES ( '$gbnaam', '$paswoord', '$email', '$profiel', '$user_ip')";
mysql_query($query);
$query = "INSERT INTO `members` ( `gbnaam` , `email` , `profiel` ) VALUES ( '$gbnaam', '$email', '$profiel')";
mysql_query($query);

}

}
?>


<? if ($errorloginbestal)print "deze gebruikersnaam bestaat al";


if ($errorpassleeg)print "geen paswoord opgegeven";


if ($errorpassleeger)print "geen paswoord opgegeven";
if ($errorpasszelfde)print "opgegeven paswoord komt niet overeen";

if ($errormailleeg)print "geen e-mailadress opgegeven";
if ($errormailbestaal)print "er is al een registratie op dit e-mailadress";
if ($errormailongeldig)print "e-mailadress is ongeldig";

if ($errorprofielleeg)print "profiel niet opgegeven";?>

onderaan bij het form staan een aantal prints wanneer er een fout is bv een gebruikersnaam die al bestaat of een ongeldig e-mail adress of paswoord niet correct is overgetypt moet hier een foutmelding komen

het script blijkt te werken als er dus een bepaald ding bv pasw niet juist getypt is zal het niet aan de database toegevoegd worden.

maar het probleem is dat er geen foutmelding op de pagina komt te staan

(ik heb opnieuw geregistreerd op dit forum met andere account kon ik niet meer inloggen en nieuw paswoord werkte nooit)
Ik heb het even snel doorgelezen.
En misschien werkt dit:

if ($paswoord2 === $paswoord){ Veranderen naar
if ($paswoord2 == $paswoord){
Omdat je 2 str met elkaar vergelijkt. en niet true/false
heb ik verandert maar hij geeft nog altijd geen foutmelding als er gegevens niet juist zijn
Wat is dit?
$error == 0;

Verder als de if() waarde niet true is gebeurt er helemaal niks en ga je verder na de afsluiting van de if() en dat is op de laatste regel.

$gbnaam = $_POST['gbnaam'];
$gbnaam = str_replace(' ','_',$gbnaam);

if ($gbnaam){
error systeem kan ook zo :P


<?php
$error = 0;
$errormessage = "<b>Errors:</b><br><br>";
$test = 0;
$testt = 1;

if ($test == $testt)
{
echo "de test's zijn gelijk!";
}
else
{
$error = 1;
$errormessage.= "De test's zijn niet gelijk";
}
if ($error == 1)
{
echo $errormessage;
}

?>


dat gebruik ik zelf (voor groote login systeemen bijvoorbeeld.)
SanThe wat moet ik dan juist veranderen ik snap niet goed wat je er mee bedoelt zoals ik het zie zou het toch moete werke denk ik.

Aan Rick; is ook geen slechte manier ma ik hou het liever op mijn manier :-)
Je maakt leuk een variabele $error aan, maar waar print je hem?

Volgens mij moet je nog even ergens echo $error; neerzetten

Reageren