błąd przy przenoszeniu?

0

Prosty kodzik:

$login = $_POST['nick'];
$pass = $_POST['pass'];
$repass = $_POST['repass'];

If($pass = $repass) return true;

If($pass = '') {
echo'Wpisz hasło!';
echo'<br>';
echo'<input type="button" onClick="history.back()">';
}


If($login = '') {
echo'Wpisz nazwę użytkownika!';
echo'<br>';
echo'<input type="button" onClick="history.back()">';
}


If($repass = '') {
echo'Podane hasła nie są identyczne!';
echo'<br>';
echo'<input type="button" onClick="history.back()">';
}

Przesyłam zmienne $login, $pass i $repass z formularza. Otwieram stronę, wpisuje błędne dane i ...[4litery]...czysty ekran...

Poradźcie coś!!

0
mat_1200 napisał(a)

Prosty kodzik:

$login = $_POST['nick'];
$pass = $_POST['pass'];
$repass = $_POST['repass'];

If($pass == $repass) return true;   //moim zdaniem tu jest błąd (w instrukcji if porównujemy dwoma znakami równości

If($pass == '') {//tu to samo ;)
echo'Wpisz hasło!';
echo'<br>';
echo'<input type="button" onClick="history.back()">';
}


If($login == '') {//i tu też
echo'Wpisz nazwę użytkownika!';
echo'<br>';
echo'<input type="button" onClick="history.back()">';
}


If($repass != $pass) { //mały błąd logiczny ;)
echo'Podane hasła nie są identyczne!';
echo'<br>';
echo'<input type="button" onClick="history.back()">';
}

<font color="red">Myślę, że jak to zmienisz to będzie chodziło jak należy :) Jak nie to pisz, będziem myśleć dalej ;)</span>

0

Powinno być chyba:

If($repass != $pass) {
echo'Podane hasła nie są identyczne!';
echo'<br>';
echo'<input type="button" onClick="history.back()">';
}
0

Dzięki wam...wstawiłem gdzie trza i działa...

0

Tuż teraz pojawił mi się następny problem... wpisuje takie same hasła i login...
otwiera mi sie czysta strona...

kod:

<? $login = $_POST['nick']; $pass = $_POST['pass']; $repass = $_POST['repass']; If($pass == $repass) return true; If($repass !== $pass) { echo'Podane hasła nie są identyczne!'; echo'
'; echo'<input type="button" value="Powrót" onclick="history.back()">'; return false; } else{ return true; } If($pass == '') { echo'Wpisz hasło!'; echo'
'; echo'<input type="button" value="Powrót" onclick="history.back()">'; return false; } else{ return true; } If($login == '') { echo'Wpisz nazwę użytkownika!'; echo'
'; echo'<input type="button" value="Powrót" onclick="history.back()">'; return false; } else{ return true; } echo'Login: '.$login.'
'; echo'Hasło: '.$pass.''; ?>

???????????

0

bzdury, za przeproszeniem....

<? $login = $_POST['nick']; $pass = $_POST['pass']; $repass = $_POST['repass']; If($pass == $repass) return true;//czyli co?:D nie wiem jak to działa ale pewnie zwróci pustą stronę -wyskoczy ze skryptu:D If($repass !== $pass) { //co to za operator logiczny?, a jeśli chodzi o != to program nie dojedzie do tego momentu jeśli jest on nieprawdziwy :P echo'Podane hasła nie są identyczne!'; echo'
'; echo'<input type="button" value="Powrót" onclick="history.back()">'; return false; } else{ //ten warunek jakby już był sprawdzany return true; } If($pass == '') { echo'Wpisz hasło!'; echo'
'; echo'<input type="button" value="Powrót" onclick="history.back()">'; return false; } else{ return true; } If($login == '') { echo'Wpisz nazwę użytkownika!'; echo'
'; echo'<input type="button" value="Powrót" onclick="history.back()">'; return false; } else{ return true; } //jeśli gdzieś po drodze wywołeś return to wątpie żeby to sie pokazało, w każdym razie gdzie to return true ma sie zwrócić - że tak powiem. do czego? echo'Login: '.$login.'
'; echo'Hasło: '.$pass.''; ?>
0
nicka napisał(a)

If($repass !== $pass) {

//co to za operator logiczny?, a jeśli chodzi o != to program nie dojedzie do tego momentu jeśli jest on nieprawdziwy :P

operator "Nie identyczny" i nie logiczny tylko porównania
http://pl2.php.net/manual/pl/language.operators.comparison.php

1 użytkowników online, w tym zalogowanych: 0, gości: 1