Souci avec base de donnée

Résolu
GOGOPHOTO Messages postés 69 Statut Membre -  
GOGOPHOTO Messages postés 69 Statut Membre -
Bonjour,
j'essaye d'envoyer des données en dans une base en mysql mais je n'y arrive pas et je ne sais pas ou est le problème dans mon code:

<?php


mysql_connect("localhost", "root");
mysql_select_db("test");

$pseudo=$_POST['pseudo'];
$titre_news=$_POST['titre news'];
$contenu_news=$_POST['contenu_news']; 
$new=nl2br ($contenu_news);

mysql_query("INSERT INTO news VALUES('', '" .$pseudo. "', '" .$titre_news. "', '" .$news. "')");

mysql_close();
?>

8 réponses

Passarinho44 Messages postés 977 Statut Contributeur 132
 
<form action="sql.php" method="post" />
<p align="center" class="Style3"> Rédiger une news </p>
<p align="center" class="Style2"> </p>
<p align="center" class="Style2">Titre:(50 caractères max)</p>
<form id="titre_news" name="titre_news" method="post" action="">


Ici tu ouvres un formulaire avant d'en avoir fermé un autre.

Tu ne peux pas avoir un formulaire dans un autre, il faut les séparer.
Par contre tu peux en avoir plusieurs sur la même page.

Ensuite ta balise : <form action="sql.php" method="post" /> n'est jamais fermé et il faut enlever le / à la fin donc ça donnerait : <form action="sql.php" method="post">

Donc pour tout ton formulaire si tu fais le traitement dans ta page sql.php il faut que tu fasses :

<form action="sql.php" method="post">
<p align="center" class="Style3"> Rédiger une news </p>
<p align="center" class="Style2"> </p>
<p align="center" class="Style2">Titre:(50 caractères max)</p>
<div align="center">
<input name="titre_news" type="text" id="titre_news" maxlength="50" />
</div>
<p align="center" class="Style2">Pseudo:(15caractères max)</p>
<div align="center">
<input name="pseudo" type="text" id="pseudo" maxlength="15" />
</div>
<p align="center" class="Style2">Contenu:</p>
<div align="center">
<textarea name="contenu_news" id="contenu_news"></textarea>
</div>
<div align="center">
<input type="submit" name="button" id="button" value="Envoyer" />
</div>
</form>

Essaie comme ça, ça devrait aller mieux

1
Passarinho44 Messages postés 977 Statut Contributeur 132
 
Tu as un message d'erreur ou pas?
0
Nico_ Messages postés 1302 Statut Membre 189
 
Bonjour

j'ai rajouter un bout de code a la suite:
mysql_query("INSERT INTO news VALUES('', '" .$pseudo. "', '" .$titre_news. "', '" .$news. "')");
 echo mysql_error().'<br />';

As-tu un code d'erreur maintenant ?
0
GOGOPHOTO Messages postés 69 Statut Membre 3
 
Ma page html ne me renvoie vers aucune page c'est le pire :(

<form action="sql.php" method="post" />
<p align="center" class="Style3"> Rédiger une news </p>
<p align="center" class="Style2">&nbsp;</p>
<p align="center" class="Style2">Titre:(50 caractères max)</p>
<form id="titre_news" name="titre_news" method="post" action="">
  
  
  <div align="center">
    <input name="titre_news" type="text" id="titre_news" maxlength="50" />
  </div>
</form>
<p align="center" class="Style2">Pseudo:(15caractères max)</p>
<form id="form3" name="form3" method="post" action="">
  
  <div align="center">
    <input name="pseudo" type="text" id="pseudo" maxlength="15" />
    </div>
</form>
<p align="center" class="Style2">Contenu:</p>
<form id="form2" name="form2" method="post" action="">
  
  <div align="center">
      <textarea name="contenu_news" id="contenu_news"></textarea>
    </div>
</form>
<form id="form4" name="form4" method="post" action="">
  <div align="center">
    <input type="submit" name="button" id="button" value="Envoyer" />
  </div>
</form>
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
GOGOPHOTO Messages postés 69 Statut Membre 3
 
Ca marche mais j'ai un autre problème, après envoie de la news, il m'affiche:
"La connexion avec le serveur a été réinitialisée pendant le chargement de la page."
"La liaison au réseau a été interrompue pendant la négociation d'une connexion. Veuillez réessayer."

Comment puis-je résoudre ce problème ?

Et j'aimerai bien faire:

si news est bien envoyé
la news a été correctement envoye

si news non envoyé
La news n'a pas été envoyé

Le tout avec if ou autre chose si c'est possible enfin
0
Passarinho44 Messages postés 977 Statut Contributeur 132
 
Dans ta page sql.php tu as ça :
<?php


mysql_connect("localhost", "root", "");
mysql_select_db("test");

$pseudo=$_POST['pseudo'];
$titre_news=$_POST['titre news'];
$contenu_news=$_POST['contenu_news'];
$news=nl2br ($contenu_news);

if ( mysql_query("INSERT INTO news VALUES('', '" .$pseudo. "', '" .$titre_news. "', '" .$news. "')") ) {
echo 'la news a été envoyée';
} else {
echo 'la news n'a pas été envoyée';
}

mysql_close();
?>

Je t'ai corrigé quelques petites erreurs, ça devrait fonctionner.
Je t'ai aussi ajouté ton if, dis moi si c'est bon.
0
GOGOPHOTO Messages postés 69 Statut Membre 3
 
Ca m'affiche toujours le message d'erreur je vais le tester online 5mn
0
GOGOPHOTO Messages postés 69 Statut Membre 3
 
Online ca marche, reste plus qu'a créer les autres fichiers:
modifier_news.php
supprimer_news.php
index.php

Merci à tous et surtout à Passarhino ;)
0