Ecrire des données [phpmyadmin]
jicé
-
Utilisateur anonyme -
Utilisateur anonyme -
Bonjour,
j'ai un soucis que je n arrive vraiment pas à resoudre
j ai fais un formulaire (pr ajouter une news.. peu importe) qui renvoie vers une page de confirmation avec un action="cible.php"
donc dans cetet page cible j ai ce code
<?php
mysql_connect("localhost", "root", "");
mysql_select_db("smplfd1.1");
?>
<?php echo $_POST['titre']; ?> <br>
<?php echo $_POST['pays']; ?> <br>
<?php echo $_POST['type']; ?> <br>
<?php echo $_POST['corps']; ?> <br>
<?phpINSERT INTO news(id, date_ajout, type, pays, titre, corps, rider) VALUES('', '2009-04-14', '$_POST['type'];', '$_POST['pays'];', '$_POST['titre'];', '$_POST['corps'];', '22')
?>
<?php
mysql_close();
?>
l affichage des variables envoyées me sert juste de vérification.
j'aurais voulu savoir pk ces variables s affichent toutes biens mais rien n'est enregistré dans ma table
(je precise que j ai tt vérifié le nom de la table est ok, ainsi que ses attributs
merci,
jicé
j'ai un soucis que je n arrive vraiment pas à resoudre
j ai fais un formulaire (pr ajouter une news.. peu importe) qui renvoie vers une page de confirmation avec un action="cible.php"
donc dans cetet page cible j ai ce code
<?php
mysql_connect("localhost", "root", "");
mysql_select_db("smplfd1.1");
?>
<?php echo $_POST['titre']; ?> <br>
<?php echo $_POST['pays']; ?> <br>
<?php echo $_POST['type']; ?> <br>
<?php echo $_POST['corps']; ?> <br>
<?phpINSERT INTO news(id, date_ajout, type, pays, titre, corps, rider) VALUES('', '2009-04-14', '$_POST['type'];', '$_POST['pays'];', '$_POST['titre'];', '$_POST['corps'];', '22')
?>
<?php
mysql_close();
?>
l affichage des variables envoyées me sert juste de vérification.
j'aurais voulu savoir pk ces variables s affichent toutes biens mais rien n'est enregistré dans ma table
(je precise que j ai tt vérifié le nom de la table est ok, ainsi que ses attributs
merci,
jicé
A voir également:
- Ecrire des données [phpmyadmin]
- Fuite données maif - Guide
- Ecrire en gras sur whatsapp - Guide
- Trier des données excel - Guide
- Comment écrire # sur pc - Guide
- Écrire en majuscule - Guide
9 réponses
Bonjour,
C'est normal que <?php est collé avec insert ?
ou (avec vérification)
C'est normal que <?php est collé avec insert ?
<?php mysql_query("INSERT INTO news (date_ajout, type, pays, titre, corps, rider) VALUES('2009-04-14', '$_POST[\'type\']', '$_POST[\'pays\']', '$_POST[\'titre\']', '$_POST[\'corps\']', '22')") mysql_close(); ?>
ou (avec vérification)
<?php mysql_connect("localhost", "root", ""); mysql_select_db("smplfd1.1"); if (!empty($_POST['type']) && !empty($_POST['pays']) && !empty($_POST['titre']) && !empty($_POST['corps'])) { $type=$_POST['type']; $pays=$_POST['pays']; $titre=$_POST['titre']; $corps=$_POST['corps']; mysql_query("INSERT INTO news (date_ajout, type, pays, titre, corps, rider) VALUES ('2009-04-14', '$type', '$pays', '$titre', '$corps', 22)"); } else { echo "Vous n'avez pas rempli tous les champs du formulaire"; } mysql_close(); ?>
Prend ma deuxième solution, car je suis pas trop douée avec les antislash (\) ^^
Edit : je crois savoir d'où viens l'erreur, il faut pas mettre de guillemets autour d'un nombre (ici 22).
Edit : je crois savoir d'où viens l'erreur, il faut pas mettre de guillemets autour d'un nombre (ici 22).
ah merci! bien vu
maintenant j ai un soucis de guillemet
car j ai cette erreur
Parse error: parse error, expecting `T_STRING' or `T_VARIABLE' or `T_NUM_STRING' in C:\wamp\www\simplified\news_envoyee.php on line 110
j ai bien enlevé les points virgules et mis des \ mais ca me remet encore une fois l erreur.
maintenant j ai un soucis de guillemet
car j ai cette erreur
Parse error: parse error, expecting `T_STRING' or `T_VARIABLE' or `T_NUM_STRING' in C:\wamp\www\simplified\news_envoyee.php on line 110
j ai bien enlevé les points virgules et mis des \ mais ca me remet encore une fois l erreur.
mince, j avais pas vu le "ou avec verification"
celui la ne me mets plus de message d erreur, c est une bonne chose mais rien n est enregistré dans la table.
je vais re tout vérifier mais je pense pas que ce soit un soucis de nom incorrect
celui la ne me mets plus de message d erreur, c est une bonne chose mais rien n est enregistré dans la table.
je vais re tout vérifier mais je pense pas que ce soit un soucis de nom incorrect
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
j ai tenté sans les guillemets du 22 mais pareil, ca me mets aucun message d erreur mais ca n enregistre pas
j ai vu que tu avais enlevé le id
c est parce qu'il est en auto increment ou c'est juste un oubli?
j ai vu que tu avais enlevé le id
c est parce qu'il est en auto increment ou c'est juste un oubli?
Oui, l'id est en auto-increment, si bien sûr dans phpMyAdmin il est en auto-increment.
Je re-vérifie mon code, car il y a peut-être une petite erreur que je n'ai pas vu.
Edit : J'ai testé le code, et ça fonctionne.
C'est peut-être ton formulaire qui n'est pas bon.
Je re-vérifie mon code, car il y a peut-être une petite erreur que je n'ai pas vu.
Edit : J'ai testé le code, et ça fonctionne.
C'est peut-être ton formulaire qui n'est pas bon.
en effet ca a lair d etre mon formulaire
avec un autre script qui rapporte les erreurs j ai eu cette erreur
Error :/ on line 109:
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 'une nouvelle pièce chez FIT, mettez Etats-Unis par exemple.', '22')' at line 1
donc en gros je dois comprendre que mon formulaire contient une erreur
le voilà:
<form name="creer_news" method="post" action="news_envoyee.php">
<tr>
<td colspan="2" class="news_titre">
> ECRIRE UNE NEWS
</td>
</tr>
<tr>
<td class="creer_news_titre" width="330" align="center" colspan="2">
<input type="text" name="titre" value=" Titre de votre news" size="92%" class="champ" onfocus="this.value='';"/>
</td>
</tr>
<tr>
<td class="creer_news_pays" align="center" width="50%">
Pays (de la news):
<select name="pays" size="1">
<option>France</option>
<option>Etats-unis</option>
<option>Russie</option>
<option>Allemagne</option>
<option>Espagne</option>
<option>Pologne</option>
<option>Autre</option>
</select>
</td>
<td class="creer_news_type" align="center" width="50%">
Type :
<select name="type" size="1">
<option>Video</option>
<option>Pièce/cadre</option>
<option>Photo</option>
<option>Autre</option>
</select>
</td>
</tr>
<tr>
<td colspan="2" class="creer_news_contenu" align="center">
<textarea name="corps" rows="10" cols="90%" class="champ" onfocus="this.value='';"> Ici, vous écrivez le contenu de la news. Pensez à faire le moins de faute possible, les news seront soumises à la modération avant toute mise en ligne. Précision: Le pays demandé est celui de la news (si la news parle d'une nouvelle pièce chez FIT, mettez Etats-Unis par exemple.</textarea>
</td>
</tr>
<tr>
<td colspan="2" class="creer_news_contenu" align="center">
<textarea name="video" rows="4" cols="90%" class="champ" onfocus="this.value='';"> Insérer le code Embed d'une éventuelle vidéo ici.</textarea>
</td>
</tr>
<tr>
<td colspan="2" class="creer_news_poster" align="center">
<input type="submit" name="poster" value="Poster." class="champ" />
</td>
</tr>
</form>
les "textarea" ne fonctionne pas comme des champs normaux au niveau de l ecriture dans la bdd?
avec un autre script qui rapporte les erreurs j ai eu cette erreur
Error :/ on line 109:
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 'une nouvelle pièce chez FIT, mettez Etats-Unis par exemple.', '22')' at line 1
donc en gros je dois comprendre que mon formulaire contient une erreur
le voilà:
<form name="creer_news" method="post" action="news_envoyee.php">
<tr>
<td colspan="2" class="news_titre">
> ECRIRE UNE NEWS
</td>
</tr>
<tr>
<td class="creer_news_titre" width="330" align="center" colspan="2">
<input type="text" name="titre" value=" Titre de votre news" size="92%" class="champ" onfocus="this.value='';"/>
</td>
</tr>
<tr>
<td class="creer_news_pays" align="center" width="50%">
Pays (de la news):
<select name="pays" size="1">
<option>France</option>
<option>Etats-unis</option>
<option>Russie</option>
<option>Allemagne</option>
<option>Espagne</option>
<option>Pologne</option>
<option>Autre</option>
</select>
</td>
<td class="creer_news_type" align="center" width="50%">
Type :
<select name="type" size="1">
<option>Video</option>
<option>Pièce/cadre</option>
<option>Photo</option>
<option>Autre</option>
</select>
</td>
</tr>
<tr>
<td colspan="2" class="creer_news_contenu" align="center">
<textarea name="corps" rows="10" cols="90%" class="champ" onfocus="this.value='';"> Ici, vous écrivez le contenu de la news. Pensez à faire le moins de faute possible, les news seront soumises à la modération avant toute mise en ligne. Précision: Le pays demandé est celui de la news (si la news parle d'une nouvelle pièce chez FIT, mettez Etats-Unis par exemple.</textarea>
</td>
</tr>
<tr>
<td colspan="2" class="creer_news_contenu" align="center">
<textarea name="video" rows="4" cols="90%" class="champ" onfocus="this.value='';"> Insérer le code Embed d'une éventuelle vidéo ici.</textarea>
</td>
</tr>
<tr>
<td colspan="2" class="creer_news_poster" align="center">
<input type="submit" name="poster" value="Poster." class="champ" />
</td>
</tr>
</form>
les "textarea" ne fonctionne pas comme des champs normaux au niveau de l ecriture dans la bdd?
Il faut que tu mettes dans les balises <option>, par exemple :
<option value="France">France</option>
Maintenant, ça doit fonctionner.
Sinon, ton deuxième champ texte, tu l'insères pas dans la base de données ?
<option value="France">France</option>
Maintenant, ça doit fonctionner.
Sinon, ton deuxième champ texte, tu l'insères pas dans la base de données ?