Forum Solarus-Games francophone

Autres => Divers => Discussion démarrée par: chuck le 23 Novembre 2004 à 23:27

Titre: PHP - Faire un zone de texte et l'envoyer sur un..
Posté par: chuck le 23 Novembre 2004 à 23:27
Bon je voudrais savoir si quelq'un connaît le code pour envoyer un texte d'une zone de texte vers un autre page, comme un forum..Tu écrit puis tu l'envois vers un autre page..Je crois que cela nécéssite MySql, pas de prob je sais comment ça marche.
Titre: PHP - Faire un zone de texte et l'envoyer sur un..
Posté par: Twister le 24 Novembre 2004 à 14:43
Utilise dans le formulaire method="get".

Edit : avec ma méthode ton texte sera stocké dans une variable qui aura le nom de la zone de texte mais ça gardera pas en mémoire, si tu veux que ça le garde utilise la BDD.
Titre: PHP - Faire un zone de texte et l'envoyer sur un..
Posté par: chuck le 25 Novembre 2004 à 21:33
D'accord merci, ton truc marche!
Titre: PHP - Faire un zone de texte et l'envoyer sur un..
Posté par: Twister le 26 Novembre 2004 à 20:57
Heu par contre dsl mais j'ai oublié un truc important, bon j'explique : avec get ta variable est envoyé sur l'autre page grace à l'url mais on peut facilement mettre du code html dans la variable en l'entrant dans l'url donc il faut que tu fasse $tavariable = htmlentities ($_GET['tavariable']); ça désactive tout code html dans la variable.  ;)
Titre: PHP - Faire un zone de texte et l'envoyer sur un..
Posté par: chuck le 26 Novembre 2004 à 21:10
Pas besoin de le dire je le savais, dès que tu ma dit "get" je me suis tout de suite rappeké de ce qu'il faut faire.
Titre: PHP - Faire un zone de texte et l'envoyer sur un..
Posté par: chuck le 27 Novembre 2004 à 03:30
[Désolé pour le double-post]
Bon j'ai un prob, avec ton truc cela n'enregistres pas le texte dans MySql, regarde:
fichier form1.php

<html>
   <head>
       <title>Formulaire d'exemple à Chuck</title>
   </head>
   <body>
       <p>Veuillez vous identifier</p>
       <form action="formulaire_02.php">
           Nom: <input type="text" name="nom" /><br />
           Prénom: <input type="text" name="prenom" /><br />
           <input type="submit" value="OK" />
       </form>
   </body>
</html>

Fichier form2 ou le texte est envoyé

<html>
<body>
<h1>Informations saisies</h1>
<?php
   echo "Nom: ".$_GET["nom"]."<br />";
   echo "Prénom: ".$_GET["prenom"]."<br />";
?>
</body>
</html>


Titre: PHP - Faire un zone de texte et l'envoyer sur un..
Posté par: Geomaster le 27 Novembre 2004 à 09:32
Normal il faut utiliser la variable globale _POST et non _GET d'une part, et spécifier dans le formulaire que c'est un envoi par formulaire (METHOD="Post")

Citation<html>
<head>
<title>Formulaire d'exemple à Chuck</title>
</head>
<body>
<p>Veuillez vous identifier</p>
<form action="formulaire_02.php" method="post">
Nom: <input type="text" name="nom" /><br />
Prénom: <input type="text" name="prenom" /><br />
<input type="submit" value="OK" />
</form>
</body>
</html>

Et puis surtout il manque la requête qui va enregistrer dans ta base.

Citation<?php
echo "Nom: ".$_POST["nom"]."<br />";
echo "Prénom: ".$_POST["prenom"]."<br />";

$conn = mysql_connect("nomHôte","login","pass");
if ($conn)
{
    echo "Connexion réussie.<BR>";
    $res = mysql_db_query("nomBase,"INSERT INTO nomTable VALUES('$_POST[\"nom\"]','$_POST[\"prenom\"]')");
    if ($res) echo "Insertion OK.<BR>";
    else die("Erreur lors de l'insertion !<BR>");
else die("Erreur de connexion. Abandon.");

?>

P.S : Au passage, la variable $_GET correspond aux valeurs passées via l'URL et non via un formulaire.
Titre: PHP - Faire un zone de texte et l'envoyer sur un..
Posté par: chuck le 28 Novembre 2004 à 00:33
Si je comprends bien les choses que je doit ajouter c'est:


<?php
echo "Nom: ".$_POST["nom"]."<br />";
echo "Prénom: ".$_POST["prenom"]."<br />";

$conn = mysql_connect("[B]mysqlbox[/B]","[B]marioconnexion[/B]","[B]mot de passe[/B]");
if ($conn)
{
   echo "Connexion réussie.<BR>";
   $res = mysql_db_query("[B]marioconnexion[/B],"INSERT INTO [B]mysqlbox[/B] VALUES('$_POST[\"nom\"]','$_POST[\"prenom\"]')");
   if ($res) echo "Insertion OK.<BR>";
   else die("Erreur lors de l'insertion !<BR>");
else die("Erreur de connexion. Abandon.");
?>
Titre: PHP - Faire un zone de texte et l'envoyer sur un..
Posté par: Twister le 28 Novembre 2004 à 10:44
Oui il faut te connecter à la BDD, enregistre tes données et n'oublie pas de changer method="get" en method="post" et le nom de ta table dans la requete mysql.
Titre: PHP - Faire un zone de texte et l'envoyer sur un..
Posté par: chuck le 28 Novembre 2004 à 17:37
moi j'ai beaucoup de misère avec les questions à propos du Sql...

NomHôte =  ???

NomBase = ???

NomTable = ???

Je crois qu'il faut faire:

NomHôte =  ftp.halifexpert.com

NomBase = shadowdarkness

NomTable = shadowdarkness
Titre: PHP - Faire un zone de texte et l'envoyer sur un..
Posté par: lelinuxien le 28 Novembre 2004 à 17:53
Avec Halflifexpert, le nom d'hôte est mysqlbox si mes souvenirs sont bons.
Titre: PHP - Faire un zone de texte et l'envoyer sur un..
Posté par: Twister le 28 Novembre 2004 à 17:55
Ta table s'appelle aussi shadow darkness ? La table tu la crée avec php my admin ?
Titre: PHP - Faire un zone de texte et l'envoyer sur un..
Posté par: chuck le 28 Novembre 2004 à 18:45
Phpmy admin? Je croyais ke les tables se créaient toute seules..
Titre: PHP - Faire un zone de texte et l'envoyer sur un..
Posté par: Twister le 28 Novembre 2004 à 19:11
Je crois que tu devrais revoir tes cours sur la base de donnée car ce que tu demande de faire est tout simple quand on a comprit les requetes sql.