Problème d'enregistrement en base [PHP] - PHP - Programmation
Marsh Posté le 06-06-2009 à 19:04:39
Premièrement, je vois que tu utilises un objet ($mysql) pour exécuter la première requête, et puis ensuite tu utilises mysql_query, pourquoi ?
Ensuite, ta méthode requete() de ton objet $mysql échappe-t-elle les données $_POST ? Sinon, il est possible d'injecter du code SQL (voir injection SQL dans google).
Après, tu n'est pas obligé de faire :
Code :
|
En effet, les variables contenues au sein de chaines délimitées par des guillemets doubles sont interprétées sans avoir recours à la concaténation. Une version plus simple et plus lisible pourrait être :
Code : |
Après, j'ai un doute sur la façon dont tu as conçu tes tables. Par exemple, inscri_ou_pas devrait être inscrit_ou_pas (tu peux même trouver un nom plus simple) et le type ne devrait pas être "text" mais "boolean". Et puis, dstina devrait à mon avis contenir un entier représentant l'ID du membre destinataire , tout comme pseudo qui contiendra l'ID de l'envoyeur.
Marsh Posté le 06-06-2009 à 19:07:54
j'aime les nom de tes champs sql!
Citation : |
Quel message?
t'as des messages d'erreurs qui apparaissent?
Marsh Posté le 06-06-2009 à 19:09:57
jonas3 a écrit : j'aime les nom de tes champs sql!
|
1) Le message de bienvenue (c'est ce que j'ai compris)
2)Très juste, rajoute un echo mysql_error(); après l'appel de mysql_query(), drmoh.
Marsh Posté le 06-06-2009 à 22:09:00
oui enfaite je crois voila le code qui est fait pour ça
Code :
|
j'ai déjà essayer mais ça n'a pas marcher aussi !!
la table messages n'est pas fait juste pour cela, elle est aussi fait pour me contacter (webmaster) alors aussi les visiteur non inscrit peut me envoyer des message alors je peux pas utiliser l'ID pour l'envoyeur. sinon pour le destinataire j'ai utiliser son pseudo car je vois que c'est plus simple !!
Citation : rajoute un echo mysql_error(); après l'appel de mysql_query() |
je vais essayer de faire ça et je vais vous répondre plus tard
si non pour jonas le message de bienvenue
Marsh Posté le 07-06-2009 à 02:08:41
reuh !!
j fé echo mysql_error() il n'y a pas de message erreur
pour le type boolean je l pas trouvé alors j changé le type text par varchar
si non j fé un test de $admine et $bienvenu et $pseudo (par echo) et ca n'a r1 donné alors il sont null pk ?? j'en sais pas !!
alors je les deplacé au debut du code et ça marché pour $admine et $bienvenu contrairement a $pseudo ce que je ne compren pas c pourkoi l'enregistrement du nouveau membre ça marche si le variable $pseudo est null ??????
Marsh Posté le 07-06-2009 à 02:53:59
ReplyMarsh Posté le 07-06-2009 à 03:04:16
dsl pour mon français :$
sinon ta pas compris quoi exactement !!
Marsh Posté le 07-06-2009 à 10:28:41
drmoh a écrit : reuh !! |
Utilise tinyint(1)
drmoh a écrit : |
Ajoute çà au tout début de ton script :
Code : |
on en saura un peu plus.
Marsh Posté le 07-06-2009 à 20:34:43
ça va !! ça marché j trouvé une autre solution pour l'info j inséré manuellement le message bienvenu dans la table messages et j'ai laissé la champs dstina vide et j fait ça
Code :
|
pour lire la table comme ça tout les utilisateur peuvent recevoir ce message !!
sinon si il y'a qq1 peut m'expliquer ce erreur est due a quoi ça va être très gentille de sa part
Marsh Posté le 06-06-2009 à 18:30:50
salùù tout le monde je ss nouveau sur le forum et je ss débutant en php
dernièrement j'ai eu un problème dans le script de mon page d'inscription
premièrement voila la partie important de mon script
.
..
...
if($mysql->requete("INSERT INTO membres VALUES('','".$pseudo."','".md5($_POST['passe'])."',".$_POST['sexe'].",".mktime(0,0,0,$_POST['mois'],$_POST['jour'],$_POST['annee']).",'".$_POST['ville']."',0,0)",0,0,1))
{
$bienvenu = "bienvenue sur ZVJ web site bla bla bla ...";
$admine='admine';
mysql_query("INSERT INTO messages VALUES('', '".$admine."', '".$bienvenu."', '".$admine."', '".$pseudo."')" );
session_start();
$_SESSION['pseudo'] = $pseudo;
$_SESSION['pass'] = $_POST['passe'];
header('Location: conex.php');
}
else
{
header('location:inscription.php?confirm=5');
}
...
..
.
.
ce scripte est fait pour enregistrer le nouveau membre puis de envoyer un message de bienvenu
voila ce que ce passe :
le membre s'enregistre normalement mé le message non plus
voila la table message :
merci de votre repense !!
Édité par Elmoricq : modification du titre du sujet (cf. règles de la catégorie).
Message édité par Elmoricq le 06-06-2009 à 22:13:41