Aide - Recherche - Membres - Calendrier
Version complète : php/mysql
CandiULB > Discussions Générales > Autres Discussions > Autres discussions - Le classique
gluck
est ce que quelqu'un peut me dire pourquoi quand je mets ce code, je recois une erreur:
Parse error: parse error in enregistement.php on line 4? et oui, la table existe... quand je met cette insertion dans phpmyadmin, je n'ai pas de probleme et si je la met en remarque j'en ia pas non plus...
une idee?
Code
<?
if($posted && !empty($login) && !empty($pass)) {
       mysql_connect("localhost","user","pass");
       INSERT INTO members VALUES ('$login','$pass') ;
       }

?>
Phi Phi
le not empty utilise isset($pass)

pour l'erreur ? as tu afficher une erreur plus précise ?
gluck
ben non c'est pas ca le probleme et le not empty est pas la cause du probleme, c'est l'insert dans la db
Phi Phi
ok j'ai trouvé smile.gif


$query = "SELECT subject,news,datetime,timestamp FROM $sectionulb ORDER BY datetime DESC";

$result = mysql_query($query) or die(mysql_error() . "<br> query non effectué.");
Phi Phi
je voulais dire avec le not empty de le remplacer par isset ( )
[ULB]-NicO-
tu tapes une requete SQL directement dans le code php !!!!!!

Code
$result = mysql_query ("INSERT INTO members VALUES ('$login','$pass')");
benoua
Je suis pas d'accord; ni !empty ni isset()... isset laissera passer une chaîne vide par exemple.

Le mieux c'est de mettre tout simplement
Code
if ($posted && $login && $pass)


Pour l'insert dans la db... heu ben comme dit phiphi tu ne peux pas mettre du code SQL au milieu du php smile.gif

Donc tu devrais avoir :
Code
<?
if($posted && $login && $pass) {
 mysql_connect("localhost","user","pass");
 $query = "INSERT INTO members VALUES '$login','$pass')";
 $result = mysql_query($query);
 // éventuellement traitement d'erreur sur $result
}
?>


Par ailleurs, c'est mal d'encoder des mots de passe en clair, tu devrais faire
Code
INSERT INTO members VALUES '$login', password('$pass')

et utiliser password au moment de la vérification aussi évidemment, donc
Code
SELECT * FROM members WHERE login='$login' AND pass=password('$pass')
Phill hip
Citation (gluck @ 9 Nov 2002, 13:25 )
Code
<?
if($posted && !empty($login) && !empty($pass)) {
       mysql_connect("localhost","user","pass");
       INSERT INTO members VALUES ('$login','$pass');
       }

?>

Code
$link= mysql_connect("localhost","user","pass");
mysql_select_db("$base");
mysql_qery("INSERT INTO members (login,pass)VALUES ('$login','$pass')",$link)
gluck
ok voila je comprend maintenant... je savais pas qu'on pouvait pas mettre du code mysql directement dans du php... et la variable pass est cryptee...
un grand merci
Ceci est une version "bas débit" de notre forum. Pour voir la version complète avec plus d'informations, la mise en page et les images, veuillez cliquer ici.
Invision Power Board © 2001-2012 Invision Power Services, Inc.