Formulaire

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Formulaire

par Cyrano » 16 avr. 2006, 18:35

Salut, bon, j'ai pas trop le temps, je fais que passer juste pour un tour, alors on évite les MP, si je réponds pas de moi-même, c'est que j'ai autre chose à faire.

Pour ton problème, la première chose à faire, c'est d'essayer d'aligner proprement ton code. Ensuite, donnes des valeurs différentes entre les attributs "name" des différents boutons "submit" et quand tu fais un test au chargement, cherche le nom du bouton cliqué en testant le nom envoyé.
<!-- premier formulaire -->
<form method="post" action="musique.php">
  <table width="743" height="189" border="0">
    <tr>
      <td width="240" height="183">
        <p class="pages">&nbsp;</p>
        <p align="center">&nbsp;</p>
      </td>
      <td width="241">
        <table width="244" border="1">
          <tr>
            <td width="234" bgcolor="#669900">
              <p align="center">Pseudo :
              <input name="pseudo" size="35" />
              <br />
              </p>
              <p align="center">Chanson:
              <input name="message" type="text" value="" size="35" />
              </p>
              <p align="center"><br />
              <input name="submit" type="submit" value="Envoyer" />
              </p>
            </td>
          </tr>
          <tr>
            <td bgcolor="#CFCFCF">
              <p class="pages">
<?php
mysql_connect("******", "***", "***");
mysql_select_db("*******");

// --------------- Etape 1 -----------------
// Si un message est envoyé, on l'enregistre
// -----------------------------------------

if (isset($_POST['pseudo']) AND isset($_POST['message']))
{

    $pseudo = htmlentities($_POST['pseudo'], ENT_QUOTES); // On utilise htmlentities par mesure de sécurité

    $message = htmlentities($_POST['message'], ENT_QUOTES); // De même pour le message
    $message = nl2br($message); // Pour le message, comme on utilise un textarea, il faut remplacer les Entrées par des <br />

    // On peut enfin enregistrer Surprised)
    mysql_query("INSERT INTO livreor1 VALUES('', '" . $pseudo . "', '" . $message . "')");
}

// --------------- Etape 2 -----------------
// On écrit les liens vers chacune des pages
// -----------------------------------------

// On met dans une variable le nombre de messages qu'on veut par page
$nombreDeMessagesParPage = 8; // Essayez de changer ce nombre pour voir Surprised)

// On récupère le nombre total de messages
$retour = mysql_query('SELECT COUNT(*) AS nb_messages FROM livreor');
$donnees = mysql_fetch_array($retour);
$totalDesMessages = $donnees['nb_messages'];

// On calcule le nombre de pages à créer
$nombreDePages  = ceil($totalDesMessages / $nombreDeMessagesParPage);

// Puis on fait une boucle pour écrire les liens vers chacune des pages
echo 'Page : ';
for ($i = 1 ; $i <= $nombreDePages ; $i++)
{
    echo '<a href="musique.php?page=' . $i . '">' . $i . '</a> ';
}

?></p>
              <p>
<?php
// --------------- Etape 3 ---------------
// Maintenant, on va afficher les messages
// ---------------------------------------

if (isset($_GET['page']))
{
    $page = $_GET['page']; // On récupère le numéro de la page indiqué dans l'adresse (livreor.php?page=4)
}
else // La variable n'existe pas, c'est la première fois qu'on charge la page
{
    $page = 1; // On se met sur la page 1 (par défaut)
}

// On calcule le numéro du premier message qu'on prend pour le LIMIT de MySQL
$premierMessageAafficher = ($page - 1) * $nombreDeMessagesParPage;

$reponse = mysql_query('SELECT * FROM livreor1 ORDER BY id DESC LIMIT ' . $premierMessageAafficher . ', ' . $nombreDeMessagesParPage);

while ($donnees = mysql_fetch_array($reponse))
{
    echo '<p><gras>' . $donnees['pseudo'] . '</gras> a écrit :<br />' . $donnees['message'] . '</p>';
}

mysql_close(); // On n'oublie pas de fermer la connexion à MySQL ;o)
?></p>
              <p>&nbsp;</p>
              <p>&nbsp;</p>
            </td>
          </tr>
        </table>
        <p align="center">&nbsp;</p>
      </td>
      <td width="240">&nbsp;</td>
    </tr>
  </table>
  <p>&nbsp;</p>
</form>
</p>
<p class="row1 topictitle1"><u>The strokes </u> </p>
<p align="center"><img src="img/strokes.jpg" width="400" height="300"></p>
<p align="left">&nbsp;<span class="row1 genmed cattitle">&nbsp;01. You only live once</span></p>
<p align="left" class="row1 genmed cattitle">&nbsp;&nbsp;02. Juicebox</p>
<p align="left" class="row1 genmed cattitle">&nbsp;&nbsp;03. Heart in a cage</p>
<p align="left" class="row1 genmed cattitle">&nbsp;&nbsp;04. Razorblade</p>
<p align="left" class="row1 genmed cattitle">&nbsp;&nbsp;05. On the other side</p>
<p align="left" class="row1 genmed cattitle">&nbsp;&nbsp;06. Vision of division</p>
<p align="left" class="row1 genmed cattitle">&nbsp;&nbsp;07. Ask me Anything</p>
<p align="left" class="row1 genmed cattitle">&nbsp;&nbsp;08. Electricityscape</p>
<p align="left" class="row1 genmed cattitle">&nbsp;&nbsp;09. Killings lies</p>
<p align="left" class="row1 genmed cattitle">&nbsp;&nbsp;10. Fear of sleep</p>
<p align="left" class="row1 genmed cattitle">&nbsp;&nbsp;11.15 minutes </p>
<p align="left" class="row1 genmed cattitle">&nbsp;&nbsp;12. Ize of the world </p>
<p align="left" class="row1 genmed cattitle">&nbsp;&nbsp;13. Evening sun</p>
<p align="left" class="row1 genmed cattitle">&nbsp;&nbsp;14. Red light </p>
<p align="left" class="row1 genmed cattitle">
<!--  deuxieme formulaire -->
<form method="post" action="musique.php">
  <table width="743" height="189" border="0">
    <tr>
      <td width="240" height="183"><p class="pages">&nbsp;</p>
        <p align="center">&nbsp;</p>
      </td>
      <td width="241">
        <table width="244" border="1">
          <tr>
            <td width="234" bgcolor="#669900"><p align="center">Pseudo :
              <input name="pseudo" size="35" />
              <br />
              </p>
              <p align="center">Chanson:
              <input name="message" type="text" value="" size="35" />
              </p>
              <p align="center"><br />
              <input name="submit" type="submit" value="Envoyer" />
              </p>
            </td>
          </tr>
          <tr>
            <td bgcolor="#CFCFCF">
              <p class="pages">
<?php
              mysql_connect("***", "***", "****");
              mysql_select_db("****");

              // --------------- Etape 1 -----------------
              // Si un message est envoyé, on l'enregistre
              // -----------------------------------------

              if (isset($_POST['pseudo']) AND isset($_POST['message']))
              {

                  $pseudo = htmlentities($_POST['pseudo'], ENT_QUOTES); // On utilise htmlentities par mesure de sécurité

                  $message = htmlentities($_POST['message'], ENT_QUOTES); // De même pour le message
                  $message = nl2br($message); // Pour le message, comme on utilise un textarea, il faut remplacer les Entrées par des <br />

                  // On peut enfin enregistrer Surprised)
                  mysql_query("INSERT INTO livreor2 VALUES('', '" . $pseudo . "', '" . $message . "')");
              }

              // --------------- Etape 2 -----------------
              // On écrit les liens vers chacune des pages
              // -----------------------------------------

              // On met dans une variable le nombre de messages qu'on veut par page
              $nombreDeMessagesParPage = 8; // Essayez de changer ce nombre pour voir Surprised)

              // On récupère le nombre total de messages
              $retour = mysql_query('SELECT COUNT(*) AS nb_messages FROM livreor');
              $donnees = mysql_fetch_array($retour);
              $totalDesMessages = $donnees['nb_messages'];

              // On calcule le nombre de pages à créer
              $nombreDePages  = ceil($totalDesMessages / $nombreDeMessagesParPage);

              // Puis on fait une boucle pour écrire les liens vers chacune des pages
              echo 'Page : ';
              for ($i = 1 ; $i <= $nombreDePages ; $i++)
              {
                  echo '<a href="musique.php?page=' . $i . '">' . $i . '</a> ';
              }

?></p>
              <p>
<?php
                // --------------- Etape 3 ---------------
                // Maintenant, on va afficher les messages
                // ---------------------------------------

                if (isset($_GET['page']))
                {
                    $page = $_GET['page']; // On récupère le numéro de la page indiqué dans l'adresse (livreor.php?page=4)
                }
                else // La variable n'existe pas, c'est la première fois qu'on charge la page
                {
                    $page = 1; // On se met sur la page 1 (par défaut)
                }

                // On calcule le numéro du premier message qu'on prend pour le LIMIT de MySQL
                $premierMessageAafficher = ($page - 1) * $nombreDeMessagesParPage;

                $reponse = mysql_query('SELECT * FROM livreor2 ORDER BY id DESC LIMIT ' . $premierMessageAafficher . ', ' . $nombreDeMessagesParPage);

                while ($donnees = mysql_fetch_array($reponse))
                {
                    echo '<p><gras>' . $donnees['pseudo'] . '</gras> a écrit :<br />' . $donnees['message'] . '</p>';
                }

                mysql_close(); // On n'oublie pas de fermer la connexion à MySQL ;o)
?></p>
              <p>&nbsp;</p>
              <p>&nbsp; </p>
            </td>
          </tr>
        </table>
        <p align="center">&nbsp;</p> </td>
      <td width="240">&nbsp;</td>
    </tr>
  </table>
  <p>&nbsp;</p>
</form>
Je n'ai rien modifié, juste "rangé" le code.

par polusdemus » 16 avr. 2006, 17:19

pouriez vous m'aider!!!
svp

:cry: :cry:

Formulaire

par polusdemus » 16 avr. 2006, 14:34

Bonjour
j'ai inclu dans une de mes pages deux formulaires pour mettre des commentaires. Les deux sources php pour afficher les messages sont eux aussi dansd cette page. Le probleme est que les messages en provenance des deux formulaires se melangent entre et je voudrais savoir comment faire pour que les messages ne se melangent pas.

tout est a la suite

Code : Tout sélectionner

//premier formulaire <form method="post" action="musique.php"> <table width="743" height="189" border="0"> <tr> <td width="240" height="183"><p class="pages">&nbsp;</p> <p align="center">&nbsp;</p> </td> <td width="241"><table width="244" border="1"> <tr> <td width="234" bgcolor="#669900"><p align="center">Pseudo : <input name="pseudo" size="35" /> <br /> </p> <p align="center">Chanson: <input name="message" type="text" value="" size="35" /> </p> <p align="center"><br /> <input name="submit" type="submit" value="Envoyer" /> </p></td> </tr> <tr> <td bgcolor="#CFCFCF"><p class="pages">
<?php
mysql_connect("******", "***", "***");
mysql_select_db("*******");

// --------------- Etape 1 -----------------
// Si un message est envoyé, on l'enregistre
// -----------------------------------------

if (isset($_POST['pseudo']) AND isset($_POST['message']))
{
    
    $pseudo = htmlentities($_POST['pseudo'], ENT_QUOTES); // On utilise htmlentities par mesure de sécurité
        
    $message = htmlentities($_POST['message'], ENT_QUOTES); // De même pour le message
    $message = nl2br($message); // Pour le message, comme on utilise un textarea, il faut remplacer les Entrées par des <br />
    
    // On peut enfin enregistrer :o)
    mysql_query("INSERT INTO livreor1 VALUES('', '" . $pseudo . "', '" . $message . "')");
}

// --------------- Etape 2 -----------------
// On écrit les liens vers chacune des pages
// -----------------------------------------

// On met dans une variable le nombre de messages qu'on veut par page
$nombreDeMessagesParPage = 8; // Essayez de changer ce nombre pour voir :o)

// On récupère le nombre total de messages
$retour = mysql_query('SELECT COUNT(*) AS nb_messages FROM livreor');
$donnees = mysql_fetch_array($retour);
$totalDesMessages = $donnees['nb_messages'];

// On calcule le nombre de pages à créer
$nombreDePages  = ceil($totalDesMessages / $nombreDeMessagesParPage);

// Puis on fait une boucle pour écrire les liens vers chacune des pages
echo 'Page : ';
for ($i = 1 ; $i <= $nombreDePages ; $i++)
{
    echo '<a href="musique.php?page=' . $i . '">' . $i . '</a> ';
}

?>

Code : Tout sélectionner

</p> <p>
<?php
// --------------- Etape 3 ---------------
// Maintenant, on va afficher les messages
// ---------------------------------------

if (isset($_GET['page']))
{
    $page = $_GET['page']; // On récupère le numéro de la page indiqué dans l'adresse (livreor.php?page=4)
}
else // La variable n'existe pas, c'est la première fois qu'on charge la page
{
    $page = 1; // On se met sur la page 1 (par défaut)
}

// On calcule le numéro du premier message qu'on prend pour le LIMIT de MySQL
$premierMessageAafficher = ($page - 1) * $nombreDeMessagesParPage;

$reponse = mysql_query('SELECT * FROM livreor1 ORDER BY id DESC LIMIT ' . $premierMessageAafficher . ', ' . $nombreDeMessagesParPage);

while ($donnees = mysql_fetch_array($reponse))
{
    echo '<p><gras>' . $donnees['pseudo'] . '</gras> a écrit :<br />' . $donnees['message'] . '</p>';
}

mysql_close(); // On n'oublie pas de fermer la connexion à MySQL ;o)
?>

Code : Tout sélectionner

</p> <p>&nbsp;</p> <p>&nbsp; </p></td> </tr> </table> <p align="center">&nbsp;</p> </td> <td width="240">&nbsp;</td> </tr> </table> <p>&nbsp;</p> </form> </p> <p class="row1 topictitle1"><u>The strokes </u> </p> <p align="center"><img src="img/strokes.jpg" width="400" height="300"></p> <p align="left">&nbsp;<span class="row1 genmed cattitle">&nbsp;01. You only live once</span></p> <p align="left" class="row1 genmed cattitle">&nbsp;&nbsp;02. Juicebox</p> <p align="left" class="row1 genmed cattitle">&nbsp;&nbsp;03. Heart in a cage</p> <p align="left" class="row1 genmed cattitle">&nbsp;&nbsp;04. Razorblade</p> <p align="left" class="row1 genmed cattitle">&nbsp;&nbsp;05. On the other side</p> <p align="left" class="row1 genmed cattitle">&nbsp;&nbsp;06. Vision of division</p> <p align="left" class="row1 genmed cattitle">&nbsp;&nbsp;07. Ask me Anything</p> <p align="left" class="row1 genmed cattitle">&nbsp;&nbsp;08. Electricityscape</p> <p align="left" class="row1 genmed cattitle">&nbsp;&nbsp;09. Killings lies</p> <p align="left" class="row1 genmed cattitle">&nbsp;&nbsp;10. Fear of sleep</p> <p align="left" class="row1 genmed cattitle">&nbsp;&nbsp;11.15 minutes </p> <p align="left" class="row1 genmed cattitle">&nbsp;&nbsp;12. Ize of the world </p> <p align="left" class="row1 genmed cattitle">&nbsp;&nbsp;13. Evening sun</p> <p align="left" class="row1 genmed cattitle">&nbsp;&nbsp;14. Red light </p> <p align="left" class="row1 genmed cattitle"> //deuxieme formulaire <form method="post" action="musique.php"> <table width="743" height="189" border="0"> <tr> <td width="240" height="183"><p class="pages">&nbsp;</p> <p align="center">&nbsp;</p> </td> <td width="241"><table width="244" border="1"> <tr> <td width="234" bgcolor="#669900"><p align="center">Pseudo : <input name="pseudo" size="35" /> <br /> </p> <p align="center">Chanson: <input name="message" type="text" value="" size="35" /> </p> <p align="center"><br /> <input name="submit" type="submit" value="Envoyer" /> </p></td> </tr> <tr> <td bgcolor="#CFCFCF"><p class="pages">
<?php
mysql_connect("***", "***", "****");
mysql_select_db("****");

// --------------- Etape 1 -----------------
// Si un message est envoyé, on l'enregistre
// -----------------------------------------

if (isset($_POST['pseudo']) AND isset($_POST['message']))
{
    
    $pseudo = htmlentities($_POST['pseudo'], ENT_QUOTES); // On utilise htmlentities par mesure de sécurité
        
    $message = htmlentities($_POST['message'], ENT_QUOTES); // De même pour le message
    $message = nl2br($message); // Pour le message, comme on utilise un textarea, il faut remplacer les Entrées par des <br />
    
    // On peut enfin enregistrer :o)
    mysql_query("INSERT INTO livreor2 VALUES('', '" . $pseudo . "', '" . $message . "')");
}

// --------------- Etape 2 -----------------
// On écrit les liens vers chacune des pages
// -----------------------------------------

// On met dans une variable le nombre de messages qu'on veut par page
$nombreDeMessagesParPage = 8; // Essayez de changer ce nombre pour voir :o)

// On récupère le nombre total de messages
$retour = mysql_query('SELECT COUNT(*) AS nb_messages FROM livreor');
$donnees = mysql_fetch_array($retour);
$totalDesMessages = $donnees['nb_messages'];

// On calcule le nombre de pages à créer
$nombreDePages  = ceil($totalDesMessages / $nombreDeMessagesParPage);

// Puis on fait une boucle pour écrire les liens vers chacune des pages
echo 'Page : ';
for ($i = 1 ; $i <= $nombreDePages ; $i++)
{
    echo '<a href="musique.php?page=' . $i . '">' . $i . '</a> ';
}

?>

Code : Tout sélectionner

</p> <p>
<?php
// --------------- Etape 3 ---------------
// Maintenant, on va afficher les messages
// ---------------------------------------

if (isset($_GET['page']))
{
    $page = $_GET['page']; // On récupère le numéro de la page indiqué dans l'adresse (livreor.php?page=4)
}
else // La variable n'existe pas, c'est la première fois qu'on charge la page
{
    $page = 1; // On se met sur la page 1 (par défaut)
}

// On calcule le numéro du premier message qu'on prend pour le LIMIT de MySQL
$premierMessageAafficher = ($page - 1) * $nombreDeMessagesParPage;

$reponse = mysql_query('SELECT * FROM livreor2 ORDER BY id DESC LIMIT ' . $premierMessageAafficher . ', ' . $nombreDeMessagesParPage);

while ($donnees = mysql_fetch_array($reponse))
{
    echo '<p><gras>' . $donnees['pseudo'] . '</gras> a écrit :<br />' . $donnees['message'] . '</p>';
}

mysql_close(); // On n'oublie pas de fermer la connexion à MySQL ;o)
?>

Code : Tout sélectionner

</p> <p>&nbsp;</p> <p>&nbsp; </p></td> </tr> </table> <p align="center">&nbsp;</p> </td> <td width="240">&nbsp;</td> </tr> </table> <p>&nbsp;</p> </form