Faire un formulaire [ Newbie en PHP/MySQL ] - Programmation
Marsh Posté le 17-02-2002 à 19:51:48
UP ca urge. J'ai un modèle de formulaire mais il passe par un ajout_verif.php pour la vérification.
C'est possible de faire sans ?
Marsh Posté le 17-02-2002 à 20:08:10
tu utilise les requetes sql pour ajouter
[jfdsdjhfuetppo]--Message édité par deathsharp--[/jfdsdjhfuetppo]
Marsh Posté le 17-02-2002 à 20:13:55
Ok, mais explique-moi ca plus clairement, je débute totalement.
Marsh Posté le 17-02-2002 à 20:35:58
Dans la page de réception du formulaire, tu as des variables correspondant aux champs du formulaire. Si ces champs s'appellent ID et infos dans le formulaire, tu auras des variables $ID et $infos. Suffit de les traiter dans ton formulaire et de contruire la requete.
$requete = "INSERT INTO table(ID, infos) VALUES('$ID', '" . addslashes($infos) . "'";
$ok = mysql_query($requete);
Le addslashes permet de traiter les caractères qui pourraient poser problème dans le cas d'une chaine de caractère.
Normalement, c'est pas très 'propre' de récupérer les champs directement en variables globales, mais pour débuter, c'est suffisant.
Marsh Posté le 17-02-2002 à 20:40:13
Merci mais euh... pas tout compris. Voilà mon formulaire de base généré dans Frontpage :
Code :
|
Où est-ce que j'insère ton code PHP là-dedans ?
Marsh Posté le 17-02-2002 à 20:43:39
dant la valeur option de <FORM> il faut mettre ta page de traitement (ca peut etre la page en cours) c'est sur cette page que tu traite les donnée
Marsh Posté le 17-02-2002 à 20:46:25
Ok.
Et ca je dois le mettre où ?
Code :
|
Marsh Posté le 17-02-2002 à 20:49:41
Voilà ma page toute simple :
Code :
|
Est-ce que ca joue ? Bon, je teste.
Marsh Posté le 17-02-2002 à 20:59:23
Citation : |
Ex de truk a la con poor ajoote des infos sur mes mp3 ds la base
Marsh Posté le 17-02-2002 à 21:11:45
Nop elle marche pas ta solution. La tienne non plus Bjbebert ! Ou alors je sais pas m'y prendre...
Marsh Posté le 17-02-2002 à 21:24:00
Pinzo a écrit a écrit : Nop elle marche pas ta solution. La tienne non plus Bjbebert ! Ou alors je sais pas m'y prendre... |
Faut adapte a tes besoins hein!
Marsh Posté le 17-02-2002 à 21:25:48
plouf02 a écrit a écrit : Faut adapte a tes besoins hein! |
Marsh Posté le 17-02-2002 à 21:58:48
bon detaillons:
tu a une page plop.php ok?
<form method="POST" action="plop.php">
<p><input type="text" name="T1" size="45"></p>
<p><input type="submit" value="Envoyer" name="B1"><input type="reset" value="Rétablir" name="B2"></p>
</form>
juste avant ca tu met un truc genr
<?
if (isset(T1))
{
$requete = "INSERT INTO table(info) VALUES('".addslashes($T1)."'";
$ok = mysql_query($requete);
}
?>
Marsh Posté le 17-02-2002 à 22:46:54
Pinzo a écrit a écrit : |
Tu l'as modifie poor ton usage?
PArce ke je te l'ai donne tel ke je l'ai moi
Marsh Posté le 17-02-2002 à 23:22:12
Pinzo a écrit a écrit : Voilà ma page toute simple :
|
Non, faut deux pages différentes.
T'as une page avec le formulaire, qui est posté vers une autre page (on peut tout mettre dans la même mais on va pas compliquer).
C'est dans la page de réception que tu as les variables correspondant aux champs du formulaire posté.
PS : c'est quoi ce type : type="themes" ??
Marsh Posté le 17-02-2002 à 23:25:50
Y a un gars sur les forums de ALL HTML.com qui m'a filé un code meilleur.
form.php
Code :
|
insert.php
Code :
|
Ca marche pil poil.
-------------------------------------------
Cependant j'ai encore un problème. Toutes mes entrées de la base s'affichent les unes après les autres sur la même ligne et sans espace dans ma page.
Par ex. elles s'affichent comme ca :
Entree1Entree2Entree3 (puces comprises)
Alors que je voudrais qu'elles devraient s'afficher comme ca :
Comment faire ? C'est dans ma page où elles s'affichent que je fois modifier ca ? La voici :
Code :
|
Aidez-moi please.
[jfdsdjhfuetppo]--Message édité par Pinzo--[/jfdsdjhfuetppo]
Marsh Posté le 17-02-2002 à 23:30:14
pas compliqué, le code html pour est
<ul>
<li>texte</li>
<li>texte</li>
</ul>
donc :
echo '<ul>';
while ($ligne=mysql_fetch_array($resultat))
{
// Affichage d'une ligne
echo '<li>' . $ligne["themes"] . '</li>';
}
echo '</ul>';
[jfdsdjhfuetppo]--Message édité par youdontcare--[/jfdsdjhfuetppo]
Marsh Posté le 17-02-2002 à 23:31:59
Si tu as ca :
<html>
<head><title>Formulaire</title></head>
<body>
<form method="POST" action="RecvForm.php">
<input type="text" name="texte1" ><br>
<input type="send" value="Envoyer">
</form>
</body>
</html>
Dans la page RecvForm.php, tu recupere $texte1 :
<html>
<head><title>Reception formulaire</title></head>
<body>
valeur de texte1 : <?echo $texte1?> <br>
<? // insertion dans la base
require("connect.php" ); // la tu mets tes parametres de connection et de selection de la base de donnees
$requete = "INSERT INTO nom_table(nom_champ) VALUES ('" . addslashes($texte1) . "'";
$ok = mysql_query($requete);
?>
requete executee : <?echo htmlspecialchars($requete)?> <br>
resultat : <?echo $ok?> <br>
<?if (! $ok) echo "Erreur durant la requete" else echo "requete OK"?>
</body>
</html>
Pas teste, mais ca devrait passer a peu pres.
Marsh Posté le 17-02-2002 à 23:40:37
youdontcare a écrit a écrit : pas compliqué, le code html pour est <ul> <li>texte</li> <li>texte</li> </ul> donc : echo '<ul>'; while ($ligne=mysql_fetch_array($resultat)) { // Affichage d'une ligne echo '<li>' . $ligne["themes"] . '</li'>; } echo '</ul'>'; |
J'ai une parse error à la ligne 29
Marsh Posté le 17-02-2002 à 23:43:48
Nop, j'ai compris.
echo '<ul>';
while ($ligne=mysql_fetch_array($resultat))
{
// Affichage d'une ligne
echo '<li>' . $ligne["themes"] . '</li>'; (le " ' " va après le " > " )
}
echo '</ul>';
Merci à tous !
[jfdsdjhfuetppo]--Message édité par Pinzo--[/jfdsdjhfuetppo]
Marsh Posté le 17-02-2002 à 23:44:43
youdontcare a écrit a écrit : echo '<ul>'; while ($ligne=mysql_fetch_array($resultat)) { // Affichage d'une ligne echo '<li> . $ligne["themes"] . </li'>; } echo '</ul>'; |
je pense ke c bon
Marsh Posté le 18-02-2002 à 00:29:48
C'est bon j'ai réussi.
Tout fonctionne à la perfection. Maintenant, place à la personnalisation de "l'environement".
Marsh Posté le 17-02-2002 à 19:33:34
Voilà, j'ai crée ma table avec mon contenu et tout, ca s'affiche sur ma page, ok.
Maintenant je voudrais, via un formulaire simple, ajouter des infos à la base.
Vous avez un formulaire type à me proposer ??
Il y a deux champs à ajouter ( "ID" et "infos" ) et il faudrait que après validation, il y aie une page de confirmation.
[jfdsdjhfuetppo]--Message édité par Pinzo--[/jfdsdjhfuetppo]
---------------
“I'll thank you very much.”