| Problème de Requête SQL pour system d'inscription | |
|
|
Auteur | Message |
---|
shadow_the_killer Utilisateur confirmé: Rang ****
Messages : 1272 Localisation : Québec\Canada Projet Actuel : Chrono Trigger
| Sujet: Problème de Requête SQL pour system d'inscription Sam 10 Oct 2009 - 17:57 | |
| Bonjour a tous voila j'ai un probleme j'essaie de faire un system d'inscription et cela ne fonctionne pas il n'ajoute pas le nouveau a la bdd - Code:
-
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" > <head> <title>Bienvenue Sur Le Site De La M.R.S!</title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> <link rel="stylesheet" media="screen" type="text/css" title="Designtest" href="designtest.css" /> </head> <body> <?php mysql_connect("*****","*****","******"); mysql_select_db("sitemrs"); $membre=mysql_query('SELECT * FROM membre')or die(mysql_error()); if(isset($pseudos)) { $pseudos=$_POST['pseudos']; } else { $pseudos=""; } if(isset($pass)) { $pass=$_POST['pass']; } else { $pass=""; } if(isset($email)) { $email=$_POST['email']; } else { $email=""; } $ip=$_SERVER['REMOTE_ADDR']; $date=date('Y-m-d H:i:s'); $time=time(); $lvl="0"; while($data=mysql_fetch_array($membre)) { if(isset($pseudos) AND isset($pass) AND isset($email)) { if($pseudos!=NULL AND $pass!=NULL AND $email!=NULL) { if($pseudos!=$data['pseudos'] or $email!=$data['email']) { mysql_query("INSERT INTO membre VALUE('','$pseudos','$pass','$email','$lvl','$ip','$time','$date')") or die(mysql_error()); mysql_close(); } } } } ?> <form method="post" action="inscription.php"> <label for="pseudos">Identifiant</label> <input type="text" name="pseudos" id="pseudos"><br /> <label for="pass">Mot De Passe</label> <input type="password" name="pass" id="pass"><br /> <label for="email">E-mail</label> <input type="text" name="email" id="email">(N'oublier Pas De Mettre Un E-Mail Valide!!!)<br /> <input type="submit" value="Valider"> </body> </html>
je ne comprend pas pourkoi cela ne fonctionne pas pourtant mon system de new a fonctionner -_- |
|
| |
daminetreg Administrateur
Messages : 16998 Localisation : Siege du CBNA! Projet Actuel : Site Web du CBNA, version beta :
| Sujet: Re: Problème de Requête SQL pour system d'inscription Dim 11 Oct 2009 - 11:46 | |
| Il va au moins jusqu'à la query d'insertion ?
Et je l'aurai plutôt écrite ainsi:
"INSERT INTO membre VALUE('','".$pseudos."','".$pass."','".$email."','".$lvl."','".$ip."','".$time."','".$date."')"
Parce que selon la configuration du php.ini il ne te remplaceras pas les variables dans ta chaîne. |
|
| |
shadow_the_killer Utilisateur confirmé: Rang ****
Messages : 1272 Localisation : Québec\Canada Projet Actuel : Chrono Trigger
| Sujet: Re: Problème de Requête SQL pour system d'inscription Dim 11 Oct 2009 - 12:09 | |
| en effet il semble que sa se rend pas -_- va falloir que je trouve un moyen ... pourtant sa déja fonctionner ultérieurement avec le systems de new ... |
|
| |
shadow_the_killer Utilisateur confirmé: Rang ****
Messages : 1272 Localisation : Québec\Canada Projet Actuel : Chrono Trigger
| Sujet: Re: Problème de Requête SQL pour system d'inscription Mar 13 Oct 2009 - 19:45 | |
| j'ai refais monn script a 0 et tout fonctionne merci quand même Dam ^^ |
|
| |
bibi675 Utilisateur confirmé: Rang *****
Messages : 2456 Localisation : Oise Projet Actuel : Jeu par navigateur original
| Sujet: Re: Problème de Requête SQL pour system d'inscription Mar 13 Oct 2009 - 19:47 | |
| Et les html_entities() ? (pour sécuriser tes requêtes, c'est le minimum) |
|
| |
shadow_the_killer Utilisateur confirmé: Rang ****
Messages : 1272 Localisation : Québec\Canada Projet Actuel : Chrono Trigger
| Sujet: Re: Problème de Requête SQL pour system d'inscription Mar 13 Oct 2009 - 21:27 | |
| j'ai suivit un tuto et se que j'ai mis en se moment c'est
mysql_real_escape_string(htmlspecialchars(.......) |
|
| |
bibi675 Utilisateur confirmé: Rang *****
Messages : 2456 Localisation : Oise Projet Actuel : Jeu par navigateur original
| Sujet: Re: Problème de Requête SQL pour system d'inscription Mar 13 Oct 2009 - 22:44 | |
| Voilà c'est ça mais en mieux mais je me souvenais que de html_entities() en fait. ^^ |
|
| |
Playboy Utilisateur confirmé: Rang ***
Messages : 699 Localisation : Sur la lune Projet Actuel : Sur le pont du Charles de Playboy
| Sujet: Re: Problème de Requête SQL pour system d'inscription Mar 13 Oct 2009 - 22:47 | |
| Oui mais html_special_char n'est pas suffisant à ce que j'en ai entendu (j'ai lu certaines choses sur les deux façons)... Et j'ai jamais testé mon idée sur le html_entities pour le passer ^^". Faudrait un jour que je teste pour me rassurer sur sa force Mais je te conseille comme bibi le html_entities !! Arf c'est pas l'inverse ? Html_entities qui est mieux que le spécial_char ? |
|
| |
daminetreg Administrateur
Messages : 16998 Localisation : Siege du CBNA! Projet Actuel : Site Web du CBNA, version beta :
| Sujet: Re: Problème de Requête SQL pour system d'inscription Mer 14 Oct 2009 - 9:36 | |
| En fait rien de tout ça n'est réellement suffisant, je vous conseille d'utiliser PDO, cela permet de lier les paramètres d'une requête directement dans la requête compilée, ce qui fait que ce n'est plus une concaténation mais une liaison de variable en mémoire et donc quelque soit les caractères les injections SQL ne sont plus possible.
Mais pour les injections SQL laissez tomber mysql_real_escape_string, ça marche mais c'est qu'un Patch, tandis PDO a été développé avec cette contrainte à l'esprit.
Après html_* sont utiles pour éviter la présence de javascript et d'attaques xss via iframe ou autre AJAX.
Exemple pour PDO: $pdo = new PDO(driver_string, user, password); $query = "SELECT * FROM TABLE WHERE Username = :username"; $statement = $pdo ->prepare($query);
$params = Array(":username" => $_POST['username']);
$result = $statement->execute($params);
Et après pour lire les résultats: $statement->fetchAll() , fetch tout court si pas mysql.
Aussi les requêtes faites successivements pour lesquelles ont ne fait que réexecuter avec des paramètres différents vont plus vite, car elles sont d'ores et déjà: analysée, compilée et prête sur le serveur MySQL, il n'y aura plus qu'une rééxecution avec d'autres paramètres.
Tandis qu'avec les anciens: mysql_query on a à chaque coût: analyse SQL, compilation SQL, exécution SQL. |
|
| |
bibi675 Utilisateur confirmé: Rang *****
Messages : 2456 Localisation : Oise Projet Actuel : Jeu par navigateur original
| Sujet: Re: Problème de Requête SQL pour system d'inscription Mer 14 Oct 2009 - 15:54 | |
| Je le savais mais je voulais pas le dire. |
|
| |
Chulien Utilisateur confirmé: Rang *****
Messages : 2232
| Sujet: Re: Problème de Requête SQL pour system d'inscription Mer 14 Oct 2009 - 16:13 | |
| si ça parle de sql sur le forum, jvais avoir besoin de vous dans pas longtemps les gars oh yeah |
|
| |
Contenu sponsorisé
| Sujet: Re: Problème de Requête SQL pour system d'inscription | |
| |
|
| |
| Problème de Requête SQL pour system d'inscription | |
|