Mon INSERT ne transmet pas a ma BDD
Résolu/Fermé
Soutshiide06
Messages postés
37
Date d'inscription
mercredi 6 juillet 2011
Statut
Membre
Dernière intervention
3 décembre 2011
-
9 nov. 2011 à 23:08
masterbotweb Messages postés 138 Date d'inscription dimanche 5 juin 2011 Statut Membre Dernière intervention 4 novembre 2016 - 10 nov. 2011 à 21:04
masterbotweb Messages postés 138 Date d'inscription dimanche 5 juin 2011 Statut Membre Dernière intervention 4 novembre 2016 - 10 nov. 2011 à 21:04
A voir également:
- Mon INSERT ne transmet pas a ma BDD
- Touche insert - Guide
- Disk boot failure insert system disk and press enter - Guide
- Activer touche insert sur ASUS UX32A - Forum Clavier
- Insert boot disk and press any key ✓ - Forum Windows
- Problème touche inser ✓ - Forum Clavier
9 réponses
masterbotweb
Messages postés
138
Date d'inscription
dimanche 5 juin 2011
Statut
Membre
Dernière intervention
4 novembre 2016
26
Modifié par masterbotweb le 10/11/2011 à 00:24
Modifié par masterbotweb le 10/11/2011 à 00:24
Bonjour Soutshiide06,
Pour ton formulaire, utilise plutôt $_SESSION[] car si un utilisateur essaie de jouer avec tes coockies tu te feras hacker facilement et utilise des fichiers séparer pour les requêtes pour que tu t'y retrouve lors des modifications. Voici un exemple que j'ai créer moi même qui est un peu long mais assez simple.
connect_db.php:
enregistrement.php:
verif.php :
Bonne chance,
Si tu as besoin d'autres choses n'hésite pas ! Sinon si ton problème est résolu n'oublie pas de le marquer.
Cordialement,
MasterBotWeb
La curiosité est un vilain défaut mais elle peut aussi être utile pour acquérir des connaissances
Pour ton formulaire, utilise plutôt $_SESSION[] car si un utilisateur essaie de jouer avec tes coockies tu te feras hacker facilement et utilise des fichiers séparer pour les requêtes pour que tu t'y retrouve lors des modifications. Voici un exemple que j'ai créer moi même qui est un peu long mais assez simple.
connect_db.php:
<?php // Start Config Base de Donnée $db_host = "localhost"; $db_login = users"; $db_pass = "mdp"; $database = "data-base"; // End Config Base de Donnée $connect_mysql_site=mysql_connect($db_host, $db_login,$db_pass) or die("Erreur de connexion au serveur"); $connect_bd_site=mysql_select_db($database) or die("Erreur de connexion à la base de donnees"); ?>
enregistrement.php:
<?php if (isset($_SESSION['pseudo'])) { header('location:index.php'); } ?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" > <head> <title>Acceuil</title> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <!-- SCRIPTS ET CSS --> </head> <body> <?php error_reporting(0); // Les erreurs qui seront afficher si il y en a if ($_GET['err'] == 1) { echo 'Veuillez remplir tous les champs'; } elseif ($_GET['err'] == 2) { echo 'Mot de passe non identique'; } elseif ($_GET['err'] == 3) { echo 'Adresse e-mail invalide'; } elseif ($_GET['err'] == 4) { echo 'Le nom d'utilisateur est déjà utilisé'; } elseif ($_GET['err'] == 5) { echo 'L\'adresse e-mail est déjà utilisée'; } ?> <!-- Ton formulaire --> <form action="verif.php" method="POST"> Pseudo : <input type="text" name="pseudo" value="" /> <br /> Mot de passe : <input type="password" name="password0" value="" /> <br /> Mot de passe : <input type="password" name="password1" value="" /> <br /> E-mail : <input type="text" name="mail" value="" /> <br /> <input type="submit" value="Envoyer" /> </form> </body> </html>
verif.php :
<?php // Ne pas afficher les erreurs error_reporting(0); include ('connect_db.php'); $sql_req_users = mysql_query("SELECT PSEUDO, EMAIL FROM Table WHERE PSEUDO= '".$pseudo."' OR EMAIL = '".$mail."'"); // Variables $pseudo = $_POST['pseudo']; $pass0 = $_POST['password0']; $pass1 = $_POST['password1']; $mail = $_POST['mail']; // Vérification du formulaire // Vérification de champ vide if ($pseudo == "" || $pass0 == "" || $pass1 == "" || $mail == "") { header("location:enregistrement.php?err=1"); } // Vérification si les mot de passe sont identiques elseif ($pass0 != $pass1) { header("location:enregistrement.php?err=2"); } // Verification de l'adresse e-mail elseif(!ereg("^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]{2,}[.][a-zA-Z]{2,4}$", $mai)) { header("location:enregistrement.php?err=3"); } // Vérification de doublons dans la base de données elseif (mysql_num_rows($sql_req_users) > 0) { while($row = mysql_fetch_array($sql_req_users)) { if($pseudo == $row["PSEUDO"]) { header("location:enregistrement.php?err=4"); } elseif($mail == $row["MAIL"]) { header("location:enregistrement.php?err=5"); } } } else { // On crypte le mot de passe $pass2 = sha1($pass0); // Si tout est OK en enregistre le tout $sql_reg = "INSERT INTO mns_users (ID, PSEUDO, PASS, MAIL) VALUES ('', '$pseudo', '$pass2', '$mail'); $requete_reg = mysql_query($sql_reg, $connect_mysql_site) or die( mysql_error()); } ?>
Bonne chance,
Si tu as besoin d'autres choses n'hésite pas ! Sinon si ton problème est résolu n'oublie pas de le marquer.
Cordialement,
MasterBotWeb
La curiosité est un vilain défaut mais elle peut aussi être utile pour acquérir des connaissances
Soutshiide06
Messages postés
37
Date d'inscription
mercredi 6 juillet 2011
Statut
Membre
Dernière intervention
3 décembre 2011
10 nov. 2011 à 10:21
10 nov. 2011 à 10:21
Le code marche presque a merveille mais il me sort toujours l'érreur "err1" qui ce situe dans enregistrement.php
masterbotweb
Messages postés
138
Date d'inscription
dimanche 5 juin 2011
Statut
Membre
Dernière intervention
4 novembre 2016
26
Modifié par masterbotweb le 10/11/2011 à 10:38
Modifié par masterbotweb le 10/11/2011 à 10:38
Essaye ce code à la place sur enregistrement.php
<?php
error_reporting(0);
// Les erreurs qui seront afficher si il y en a
if ($_GET['err'] == "") {
echo '';
}
elseif ($_GET['err'] == 1) {
echo 'Veuillez remplir tous les champs';
}
elseif ($_GET['err'] == 2) {
echo 'Mot de passe non identique';
}
elseif ($_GET['err'] == 3) {
echo 'Adresse e-mail invalide';
}
elseif ($_GET['err'] == 4) {
echo 'Le nom d'utilisateur est déjà utilisé';
}
elseif ($_GET['err'] == 5) {
echo 'L\'adresse e-mail est déjà utilisée';
}
?>
<?php
error_reporting(0);
// Les erreurs qui seront afficher si il y en a
if ($_GET['err'] == "") {
echo '';
}
elseif ($_GET['err'] == 1) {
echo 'Veuillez remplir tous les champs';
}
elseif ($_GET['err'] == 2) {
echo 'Mot de passe non identique';
}
elseif ($_GET['err'] == 3) {
echo 'Adresse e-mail invalide';
}
elseif ($_GET['err'] == 4) {
echo 'Le nom d'utilisateur est déjà utilisé';
}
elseif ($_GET['err'] == 5) {
echo 'L\'adresse e-mail est déjà utilisée';
}
?>
masterbotweb
Messages postés
138
Date d'inscription
dimanche 5 juin 2011
Statut
Membre
Dernière intervention
4 novembre 2016
26
Modifié par masterbotweb le 10/11/2011 à 10:43
Modifié par masterbotweb le 10/11/2011 à 10:43
Si tu veux je peux te faire des requêtes plus élaborer pour gérer les erreurs et le titre de la page ainsi que le contenu ! mais encore plus complexe !
l'exemple que j'ai donné est simple et il faut encore compléter selon les fonctions !
l'exemple que j'ai donné est simple et il faut encore compléter selon les fonctions !
Soutshiide06
Messages postés
37
Date d'inscription
mercredi 6 juillet 2011
Statut
Membre
Dernière intervention
3 décembre 2011
Modifié par Soutshiide06 le 10/11/2011 à 10:46
Modifié par Soutshiide06 le 10/11/2011 à 10:46
Ce souci est rélgé, mais maintenant j'ai droit a ce message d'erreur
"Column count doesn't match value count at row 1"
=s
PS. un grand merci pour ce que tu a deja fait pour moi
"Column count doesn't match value count at row 1"
=s
PS. un grand merci pour ce que tu a deja fait pour moi
masterbotweb
Messages postés
138
Date d'inscription
dimanche 5 juin 2011
Statut
Membre
Dernière intervention
4 novembre 2016
26
10 nov. 2011 à 10:57
10 nov. 2011 à 10:57
Vérifie la requête ainsi que les colonnes de ta table si elles sont les même.
<?php ...... $sql_req_users = ... ...... elseif (mysql_num_rows($sql_req_users) > 0) { while($row = mysql_fetch_array($sql_req_users)) { if($pseudo == $row["PSEUDO"]) { header("location:enregistrement.php?err=4"); } elseif($mail == $row["MAIL"]) { header("location:enregistrement.php?err=5"); } } } ...... ?>
Soutshiide06
Messages postés
37
Date d'inscription
mercredi 6 juillet 2011
Statut
Membre
Dernière intervention
3 décembre 2011
Modifié par Soutshiide06 le 10/11/2011 à 11:06
Modifié par Soutshiide06 le 10/11/2011 à 11:06
$sql_req_users = mysql_query("SELECT id_utilisateur, adresse_email FROM Table(j'ai également testé avec le nom de ma table) WHERE id_utilisateur= '".$pseudo."' OR adresse_email = '".$mail."'"); elseif (mysql_num_rows($sql_req_users) > 0) { while($row = mysql_fetch_array($sql_req_users)) { if($pseudo == $row["id_utilisateur"]) { header("location:inscription.php?err=4"); } elseif($mail == $row["adresse_email"]) { header("location:inscription.php?err=5"); } } }
masterbotweb
Messages postés
138
Date d'inscription
dimanche 5 juin 2011
Statut
Membre
Dernière intervention
4 novembre 2016
26
10 nov. 2011 à 11:17
10 nov. 2011 à 11:17
Quel est la structure de ta table s'il te plait ?
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Soutshiide06
Messages postés
37
Date d'inscription
mercredi 6 juillet 2011
Statut
Membre
Dernière intervention
3 décembre 2011
10 nov. 2011 à 11:21
10 nov. 2011 à 11:21
http://data.imagup.com/12/1135586047.jpg
la voila :p
la voila :p
masterbotweb
Messages postés
138
Date d'inscription
dimanche 5 juin 2011
Statut
Membre
Dernière intervention
4 novembre 2016
26
10 nov. 2011 à 11:37
10 nov. 2011 à 11:37
l'erreur vient d ta table :
Essaye comme ceci sous phpmyadmin
Supprime la structure de la table et exécute cette requête :
Essaye comme ceci sous phpmyadmin
Supprime la structure de la table et exécute cette requête :
CREATE TABLE IF NOT EXISTS 'Table' ( 'ID' int(11) NOT NULL AUTO_INCREMENT, 'id_utilisateur' varchar(250) NOT NULL, 'mot_de_passe' varchar(250) NOT NULL, 'adresse_mail' varchar(250) NOT NULL, PRIMARY KEY ('ID') ) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=24 ;
Soutshiide06
Messages postés
37
Date d'inscription
mercredi 6 juillet 2011
Statut
Membre
Dernière intervention
3 décembre 2011
Modifié par Soutshiide06 le 10/11/2011 à 11:43
Modifié par Soutshiide06 le 10/11/2011 à 11:43
#1064 - Erreur de syntaxe près de ''table' ( 'ID' int(11) NOT NULL AUTO_INCREMENT, 'id_utilisate' à la ligne 1
masterbotweb
Messages postés
138
Date d'inscription
dimanche 5 juin 2011
Statut
Membre
Dernière intervention
4 novembre 2016
26
10 nov. 2011 à 11:52
10 nov. 2011 à 11:52
Fait la requête à partir de ta base de données et remplace table par le nom de la table qui doit être vide normalement !
Soutshiide06
Messages postés
37
Date d'inscription
mercredi 6 juillet 2011
Statut
Membre
Dernière intervention
3 décembre 2011
10 nov. 2011 à 11:55
10 nov. 2011 à 11:55
c'est ce que je fait...
http://data.imagup.com/10/1135588047.jpg
http://data.imagup.com/10/1135588047.jpg
masterbotweb
Messages postés
138
Date d'inscription
dimanche 5 juin 2011
Statut
Membre
Dernière intervention
4 novembre 2016
26
10 nov. 2011 à 12:11
10 nov. 2011 à 12:11
Donc on va le faire manuellement !
Dans ta table créer ta première colonne:
ID | Type: INT | Auto Increment | Primary
Ta deuxième colonne:
id_utilisateur | Type: varchars | valeur : 250
Ta troisième table :
mot_de_passe | Type: varchars | valeur : 250
Ta quatrième colonne :
adresse_mail | Type: varchars | valeur : 250
Dans ta table créer ta première colonne:
ID | Type: INT | Auto Increment | Primary
Ta deuxième colonne:
id_utilisateur | Type: varchars | valeur : 250
Ta troisième table :
mot_de_passe | Type: varchars | valeur : 250
Ta quatrième colonne :
adresse_mail | Type: varchars | valeur : 250
Soutshiide06
Messages postés
37
Date d'inscription
mercredi 6 juillet 2011
Statut
Membre
Dernière intervention
3 décembre 2011
10 nov. 2011 à 12:17
10 nov. 2011 à 12:17
même érreur...
masterbotweb
Messages postés
138
Date d'inscription
dimanche 5 juin 2011
Statut
Membre
Dernière intervention
4 novembre 2016
26
10 nov. 2011 à 19:32
10 nov. 2011 à 19:32
As tu essayer de vider la table avant de créer une nouvelle structure !
Soutshiide06
Messages postés
37
Date d'inscription
mercredi 6 juillet 2011
Statut
Membre
Dernière intervention
3 décembre 2011
10 nov. 2011 à 20:45
10 nov. 2011 à 20:45
C'ont bon on m'a aidé avec ta base, franchement apar d'après mon collègue il y a quelques erreur mais vite fait quoi donc je te dit en grand merci pour ce code =) probleme résolut
masterbotweb
Messages postés
138
Date d'inscription
dimanche 5 juin 2011
Statut
Membre
Dernière intervention
4 novembre 2016
26
10 nov. 2011 à 21:04
10 nov. 2011 à 21:04
Derien, tout le plaisir est pour moi !