Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1513 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  Erreur de paramètres?

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Erreur de paramètres?

n°1667995
bingojm
Posté le 08-01-2008 à 21:32:21  profilanswer
 

Salut,  
 
J'essaie de créer un petit formulaire dont je veux que les résultats soient encodés dans une base de données.
Le problème est apparemment dans la connexion vers cette base de données.
J'ai fait un include dans chaque page vers les paramètres de connexion, mais rien n'y fait. Je suis chez Lycos, mais table est bien existante et voilà les paramètres de connexion. Est-ce que l'erreur vient de là?

Code :
  1. <?php 
  2. $hostname = "localhost"; 
  3. $database = "monsite_be_2 "; 
  4. $username = "monsite_be"; 
  5. $password = "Musique"; 
  6. $connexion = mysql_pconnect($hostname, $username, $password) or die(mysql_error()); 
  7. mysql_select_db($database, $connexion); 
  8. ?>


Merci de m'éclairer dans mes débuts...
 

mood
Publicité
Posté le 08-01-2008 à 21:32:21  profilanswer
 

n°1668042
afbilou
pouet your life
Posté le 08-01-2008 à 23:02:18  profilanswer
 

Et qu'elle est l'erreur rencontrée justement ??

n°1668118
leflos5
On est ou on est pas :)
Posté le 09-01-2008 à 05:23:15  profilanswer
 

JE suis pas sûr que la connection persistante soit une bonne idée sur un hébergement mutualisé ;)

n°1668125
FlorentG
Posté le 09-01-2008 à 07:49:52  profilanswer
 

Y'a-t-il un message d'erreur ? Ca nous aiderait bien

n°1668268
skeye
Posté le 09-01-2008 à 13:50:23  profilanswer
 

leflos5 a écrit :

JE suis pas sûr que la connection persistante soit une bonne idée sur un hébergement mutualisé ;)


même host/user/mdp?[:autobot]


---------------
Can't buy what I want because it's free -
n°1668302
leflos5
On est ou on est pas :)
Posté le 09-01-2008 à 14:47:11  profilanswer
 

skeye a écrit :


même host/user/mdp?[:autobot]


Y comprend pas la question :o

n°1668313
skeye
Posté le 09-01-2008 à 15:02:42  profilanswer
 

leflos5 a écrit :


Y comprend pas la question :o


 
Le pconnect crée une nouvelle connexion si un de ces paramètres est différent, donc quel est le pb avec un mutualisé?


---------------
Can't buy what I want because it's free -
n°1668411
bingojm
Posté le 09-01-2008 à 16:38:01  profilanswer
 

En fait, lorsque tout est en ligne, je remplis le formulaire, mais qd j'envoie, tout se passe normalement, sauf que rien ne s'enregistre dans la base de données! Donc, pas de message d'erreur. Cela dit, mon script php est assez simple...
Pour ce qui est du mutualisé, je dois dire que je ne sais pas du tout ce que c'est!
Pour vous, le code ci-dessus devrait fonctionner correctement?
Merci

n°1668419
skeye
Posté le 09-01-2008 à 16:40:51  profilanswer
 

oui.


---------------
Can't buy what I want because it's free -
n°1668433
bingojm
Posté le 09-01-2008 à 16:48:51  profilanswer
 

Alors voici le code de mon formulaire:

Code :
  1. <form action="inserer.php" method="post">
  2. <?
  3. include("connexion.php" );   
  4. $perso=$_GET['perso']; 
  5. $structure=$_GET['structure']; 
  6. $groupe=$_GET['groupe']; 
  7. $newperso=$_GET['newperso']; 
  8. $reste=$_GET['reste']; 
  9. ?>
  10.   <p>Perso:
  11.     <input name="perso" type="text" id="perso" value="<? echo $perso ?>">  </p>
  12.   <p>Structure  :
  13.     <input name="structure" type="text" id="structure" value="<? echo $structure ?>"></p>
  14.   <p>Groupe  :
  15.     <input name="groupe" type="text" id="groupe" value="<? echo $groupe ?>"></p>
  16.   <p>Nouvelles  perso :
  17.     <input name="newperso" type="text" id="newperso" value="<? echo $newperso ?>"></p>
  18.   <p>Reste :
  19.     <input name="reste" type="text" id="reste" value="<? echo $reste ?>"></p>
  20.   <p><input type="submit" name="Submit" value="Envoyer" /></p>
  21. </form>


 
Et voici celui de ma page 'inserer.php' qui est censée envoyer le contenu dans la base de données.

Code :
  1. <? 
  2. include("connexion.php" ); 
  3. $perso=$_POST['perso']; 
  4. $structure=$_POST['structure'];
  5. $groupe=$_POST['groupe']; 
  6. $newperso=$_POST['newperso']; 
  7. $reste=$_POST['reste'];   
  8. mysql_query("insert into unites values ('','$perso','$structure','$groupe','$newperso,'$reste')" ); 
  9. echo "Le commentaire a été inséré."; 
  10. ?>


Qui va pouvoir trouver l'erreur?
1000x merci d'avance!

mood
Publicité
Posté le 09-01-2008 à 16:48:51  profilanswer
 

n°1668458
omega2
Posté le 09-01-2008 à 17:05:22  profilanswer
 

C'est beau les scripts aussi mal protégé, le moindre ' qui traine dans un élément du formulaire et la requête plante. (mysql_real_escape_string existe pour une bonne raison) En plus, je ne vois pas la moindre vérification du bon déroulement de la requête. Certe la fonction mysql n'a pas planté, mais comme tu ne vérifies pas ce que mysql raconte tu n'as aucune idée de ce qui se passe dans la base de donnée.
Un simple 'mysql_query("ta requette" ) or die(mysql_error())' te donnera déjà plus d'infos.

Message cité 1 fois
Message édité par omega2 le 09-01-2008 à 17:06:02
n°1668466
bingojm
Posté le 09-01-2008 à 17:10:06  profilanswer
 

c'est très gentil de m'en apprendre davantage dans mes tous débuts. Je vais essayer ca et on verra la suite.

n°1668558
bingojm
Posté le 09-01-2008 à 19:17:38  profilanswer
 

omega2 a écrit :

C'est beau les scripts aussi mal protégé, le moindre ' qui traine dans un élément du formulaire et la requête plante. (mysql_real_escape_string existe pour une bonne raison) En plus, je ne vois pas la moindre vérification du bon déroulement de la requête. Certe la fonction mysql n'a pas planté, mais comme tu ne vérifies pas ce que mysql raconte tu n'as aucune idée de ce qui se passe dans la base de donnée.
Un simple 'mysql_query("ta requette" ) or die(mysql_error())' te donnera déjà plus d'infos.


En effet, voici le message d'erreur qui apparait:
"You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'unites' at line 1"
 
Pour être sûr que j'ai bien introduit la vérification, voici ce que j'ai mis dans ma page 'inserer.php '(sachant que ma base s'appelle 'unites'):

Code :
  1. <? 
  2. include("connexion.php" ); 
  3. $perso=$_POST['perso']; 
  4. $structure=$_POST['structure'];
  5. $groupe=$_POST['groupe']; 
  6. $newperso=$_POST['newperso']; 
  7. $reste=$_POST['reste'];   
  8. mysql_query("insert into unites values ('','$perso','$structure','$groupe','$newperso,'$reste')" ); 
  9. mysql_query("unites" ) or die(mysql_error());
  10. echo "Le commentaire a été inséré."; 
  11. ?>


Si jusque là c'est bien correct, merci de m'aider à décoder le message d'erreur, pcq je n'y comprends pas grand chose...
Merci à vous

n°1668567
art_dupond
je suis neuneu... oui oui !!
Posté le 09-01-2008 à 19:34:47  profilanswer
 

enlever

 
Code :
  1. mysql_query("unites" )
 


=>

 
Code :
  1. mysql_query("insert into unites values ('','$perso','$structure','$groupe','$newperso,'$reste')" ) or die(mysql_error());

Message cité 1 fois
Message édité par art_dupond le 09-01-2008 à 19:35:29

---------------
oui oui
n°1668569
bingojm
Posté le 09-01-2008 à 19:42:23  profilanswer
 

art_dupond a écrit :

enlever
 

Code :
  1. mysql_query("unites" )


 
 
=>
 

Code :
  1. mysql_query("insert into unites values ('','$perso','$structure','$groupe','$newperso,'$reste')" ) or die(mysql_error());



On avance je pense...
Voilà le nouveau message d'erreur: "No database selected"
J'ai donc bien mis:

Code :
  1. <? 
  2. include("connexion.php" ); 
  3. $perso=$_POST['perso']; 
  4. $structure=$_POST['structure'];
  5. $groupe=$_POST['groupe']; 
  6. $newperso=$_POST['newperso']; 
  7. $reste=$_POST['reste'];   
  8. mysql_query("insert into unites values ('','$perso','$structure','$groupe','$newperso,'$reste')" ) or die(mysql_error());
  9. echo "Le commentaire a été inséré."; 
  10. ?>


Et je ne dois rien changer dans ma page 'connexion.php'? Tout est bien correct de ce côté là?

n°1668609
art_dupond
je suis neuneu... oui oui !!
Posté le 09-01-2008 à 21:56:05  profilanswer
 

Code :
  1. mysql_select_db($database, $connexion) or die('Impossible de sélectionner la base de données : ' . mysql_error());


?


---------------
oui oui
n°1668880
bingojm
Posté le 10-01-2008 à 14:05:12  profilanswer
 

Voilà maintenant le nouveau message d'erreur:
"You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ''test3,'')' at line 1"
Test 3 correspond au dernier élément que j'ai encodé dans le formulaire.
Où se situe l'erreur maintenant? Je n'arrive pas à voir dans quel fichier je dois regarder.
En tous cas, merci pour votre aide!!!

n°1668890
FlorentG
Posté le 10-01-2008 à 14:08:37  profilanswer
 

Y'a un quote qui manque


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  Erreur de paramètres?

 

Sujets relatifs
erreur : Warning: session_start() [function.session-start]: Cannot senErreur php bizzare...
[PHP] Erreur incompréhensibleAppel en Javascript avec paramètres vers Php
Erreur 340 non universel ??Enregistrer les paramètres d'un fichier de configuration
[PHP] Erreur: Cannot use a scalar value as an arrayComment debugger "trop peu de parametres" [Resolu]
Commande avec 2 parametres : ERREUR ----------- RESOLU"[C++ ActiveX ASP] Erreur sur les paramètres mon composant ?
Plus de sujets relatifs à : Erreur de paramètres?


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR