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

  FORUM HardWare.fr
  Programmation
  PHP

  ajout d'un form dans une base de donnée

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

ajout d'un form dans une base de donnée

n°701238
abaddon200​2
Posté le 16-04-2004 à 16:31:11  profilanswer
 

Bonjour, voilà petite question de n00b... g ce code ci-dessous qui récupère le contenu d'un formulaire, et est censé uploader le fichier sur le serveur et déposer les contenus textes dans une base de donnée. L'image est bien uploadée, mais les champs eux ne sont pas déposés dans la base de donnée... pourtant si je fé des echo dessus, leur contenu est correct.
 
Je comprend pas ma faute...  :??:  
 
merci de votre aide  
 

Code :
  1. //récupération des valeurs du formulaire
  2. isset($_POST) or
  3. die("<b><font face=Verdana size=2>Problème de définition de $_POST</font></b><br>&nbsp;<br><input type=button value='Back' onClick=javascript:history.back()>" );
  4. $titre = trim($_POST['titre']);
  5. $date = trim($_POST['date']);
  6. $auteur = trim($_POST['auteur']);
  7. $contenu1 = trim($_POST['contenu']);
  8. //quant au fichier d'image
  9. $nomFich = $_FILES['image']['name']; //Le nom original du fichier, tel que sur la machine du client web.  
  10. $typeFich = $_FILES['image']['type']; //Le type MIME du fichier, si le navigateur a fourni cette information. Par exemple, cela pourra être "image/gif" .  
  11. $tailleFich = $_FILES['image']['size']; //La taille, en octets, du fichier téléchargé.  
  12. $tmpFich = $_FILES['image']['tmp_name']; //Le nom temporaire du fichier qui sera chargé sur la machine serveur.  
  13. $errFich = $_FILES['image']['error']; //Le code d'erreur error code associé au téléchargement de fichier.
  14. if($nomFich != "" )
  15. {
  16. //déplacement de l'image dans le dossier  
  17. $uploaddir = /var/local/www/mon_site/';
  18. print "<pre>";
  19. if (move_uploaded_file($_FILES['image']['tmp_name'], $uploaddir . $_FILES['image']['name']))
  20. {
  21. print "<font face=Verdana size=2>Le fichier est valide, et a été téléchargé avec succès.</font>\n";
  22. }
  23. else
  24. {
  25. echo "<font face=Verdana size=2>Le fichier n'a pas été transféré correctement.</font>\n";
  26. }
  27. }
  28. //traitement de la chaine de caractère $contenu1 en  remplaçant {nomfichier} en <img src="nomfichier">
  29. $char1='{';
  30. $char2='}';
  31.  
  32. //première partie de la news (avant le [img...
  33. $pos = strpos($contenu1, $char1);
  34. $partie1 = substr($contenu1, 0, $pos);
  35. //partie 2 "<img src=nom de l'image>"
  36. $partie2="<img src=\"../img/news/".$nomFich."\">";
  37. //partie3 après le nom de l'img
  38. $fin = strlen($contenu1);
  39. $pos = strpos($contenu1, $char2);
  40. partie3 = substr($contenu1, $pos+1, $fin);
  41. //chaine finale
  42. $contenu=$partie1.$partie2.$partie3;
  43. //Ajout des infos text dans la base de donnée
  44. $sql="INSERT INTO news_cajo SET titre=\"".$titre."\", date=\"".$date."\", auteur=\"".$auteur."\", contenu=\"".$contenu."\" ";
  45. $db = mysql_connect("localhost","USER","PASS" );
  46. mysql_select_db("TABLE", $db);
  47. echo mysql_error();
  48. $res=mysql_query($sql, $db);
  49. echo "<p align=center><strong><font face=Verdana size=2>News ajoutée avec succès !</font></strong><br />\n";


Message édité par abaddon2002 le 16-04-2004 à 16:32:43
mood
Publicité
Posté le 16-04-2004 à 16:31:11  profilanswer
 

n°701265
naceroth
Posté le 16-04-2004 à 16:51:37  profilanswer
 

A part la grosse erreur de sql ? (confusion entre la syntaxe du INSERT et celle du UPDATE) :)

n°701269
abaddon200​2
Posté le 16-04-2004 à 16:56:46  profilanswer
 

naceroth a écrit :

A part la grosse erreur de sql ? (confusion entre la syntaxe du INSERT et celle du UPDATE) :)


 
bin si je met

Code :
  1. INSERT INTO news_cajo (...,...) VALUES($...,$...);

ça change pas mon prob... ça ajoute rien kan même... :\

n°701275
naceroth
Posté le 16-04-2004 à 17:00:54  profilanswer
 

1. Les champs de type texte, varchar & co sont entourés de ' :)
2. met un mysql_query($query) or die (mysql_errno.' '.mysql_error." dans la requête $query" ); pur afficher l'erreur éventuelle, ça simplife le débogage :D

n°701289
abaddon200​2
Posté le 16-04-2004 à 17:13:15  profilanswer
 

Code :
  1. Notice:  Use of undefined constant mysql_errno - assumed 'mysql_errno' in /var/local/www/mon_site/ajout2.php on line 121
  2. Notice:  Use of undefined constant mysql_error - assumed 'mysql_error' in /var/local/www/mon_site/ajout2.php on line 121
  3. mysql_errno mysql_error dans la requête INSERT INTO news_cajo(titre,date,auteur,contenu) VALUES('test','16-04-2004'test','salut !<img src="test.jpg"> ')


 
Si jms g apache 2 et php 4.3.5RC4-dev

n°701298
naceroth
Posté le 16-04-2004 à 17:22:13  profilanswer
 

Ah oui, merde, j'ai pas mis les parenthèses, désolé (elle est entièrement pour ma pomme celle là :D).

Code :
  1. mysql_query($query) or die (mysql_errno().' '.mysql_error()." dans la requête $query" );


Remarque, même sans ça, on sait qu'il y a une erreur dans ton code (une virgule entre la date et l'auteur dans le value du insert qui manque)

n°701323
abaddon200​2
Posté le 16-04-2004 à 17:50:30  profilanswer
 

ouais mis à part cette petite erreur, une fois corrigée, g testé sur d'autres serveurs, ça fonctionne très bien en fait, chais pas, c mon serveur en bois qui va pas :\ je mate sa config parce que ça passe tjrs pas sur ce serveur là...
 
je retourne mettre du charbon :p


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

  ajout d'un form dans une base de donnée

 

Sujets relatifs
connection base de données ?Création d'une appli pour Palm + base MySQL
Quelques conseils pour un débutant vba - base de donnéesAlgorithme de recherche dans une base de données
[POCKETPC] test présence sur baserequete en PHP/MySQL sur deux base differentes ...
Temporisation pour base de donnéeajout de compte auto dans AD
balise form et saut de ligne ? 
Plus de sujets relatifs à : ajout d'un form dans une base de donnée


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