Problem php

Bonjour,

j'ai un problem avec :

Notice: Undefined index: pseudo in D:\wamp vista\www\tests\sitkoum\livreor.php on line 88

et mon code est :
..../
<?php
mysql_connect("localhost", "root", "");
mysql_select_db("sitecoum");
 





	
	

{
if ( $_POST['pseudo'] != NULL AND $_POST['message'] != NULL) 
{
    $pseudo = mysql_real_escape_string(htmlspecialchars($_POST['pseudo'])); 
    $message = mysql_real_escape_string(htmlspecialchars($_POST['message'])); 
    $message = nl2br($message); 
 
    
    mysql_query("INSERT INTO livreor VALUES('', '" . $pseudo . "', '" . $message . "')");
    }
}
 

 

$nombreDeMessagesParPage = 10; 

$retour = mysql_query('SELECT COUNT(*) AS nb_messages FROM livreor');
$donnees = mysql_fetch_array($retour);$totalDesMessages = $donnees['nb_messages'];

$nombreDePages  = ceil($totalDesMessages / $nombreDeMessagesParPage);

echo 'Page : ';
for ($i = 1 ; $i <= $nombreDePages ; $i++)
{
    echo '<a href="livreor.php?page=' . $i . '">' . $i . '</a> ';
}
?>
 
</p>
<form class="formliv" method="post" action="livreor.php">
  <p>
            Pseudo : <input name="pseudo" /><br />
            Message :<br />
            <textarea name="message" rows="8" cols="35"></textarea><br />
            <input type="submit" value="Envoyer" />
	        </p>
    </form>
    <p class="pagesliv">
 
<?php
 
 

 
if (isset($_GET['page']))
{
        $page = intval($_GET['page']); 
}
else 
{
        $page = 1; 
}
 

$premierMessageAafficher = ($page - 1) * $nombreDeMessagesParPage;
 
$reponse = mysql_query('SELECT * FROM livreor ORDER BY id DESC LIMIT ' . $premierMessageAafficher . ', ' . $nombreDeMessagesParPage);
 
while ($donnees = mysql_fetch_array($reponse))
{
        echo '<p class="messageliv"><strong>' . $donnees['pseudo'] . '</strong> a écrit :<br />' . $donnees['message'] . '</p>';
}
 
mysql_close(); 
?>
 
 
<?php
mysql_connect("localhost", "root", "");
mysql_select_db("sitecoum");
 
if (isset($_POST['pseudo']) AND isset($_POST['message']))
{
    $pseudo = mysql_real_escape_string(htmlspecialchars($_POST['pseudo'])); 
mysql_real_escape_string et htmlspecialchars par mesure de sécurité
    $message = mysql_real_escape_string(htmlspecialchars($_POST['message'])); 
    $message = nl2br($message); 
 
   
    mysql_query("INSERT INTO livreor VALUES('', '" . $pseudo . "', '" . $message . "')");
}
 

$nombreDeMessagesParPage = 500; 

$retour = mysql_query('SELECT COUNT(*) AS nb_messages FROM livreor');
$donnees = mysql_fetch_array($retour);$totalDesMessages = $donnees['nb_messages'];

$nombreDePages  = ceil($totalDesMessages / $nombreDeMessagesParPage);

echo 'Page : ';
for ($i = 1 ; $i <= $nombreDePages ; $i++)
{
    echo '<a  href="livreor.php?page=' . $i . '">' . $i . '</a> ';
}
?>
..../

Configuration: Windows Vista
Internet Explorer 7.0

2 réponses

  • Votes
  • Date
  • Date décroissante
  1. Modérateur
    Ca veut dire que le formulaire n'a renvoyé aucun "pseudo". Et pour cause, l'utilisateur ne peut pas le remplir parce qu'en théorie il ne s'affiche même pas ! Il manque le type :

    <input name="pseudo" type="text" />
    1. Vérifie avant d'poster ski ce passe à la ligne 88 ..

      Tien t'avais oublié d'commenter ...

      J'ai mis en gras

      <?php
      mysql_connect("localhost", "root", "");
      mysql_select_db("sitecoum");

      {
      if ( $_POST['pseudo'] != NULL AND $_POST['message'] != NULL)
      {
      $pseudo = mysql_real_escape_string(htmlspecialchars($_POST['pseudo']));
      $message = mysql_real_escape_string(htmlspecialchars($_POST['message']));
      $message = nl2br($message);

      mysql_query("INSERT INTO livreor VALUES('', '" . $pseudo . "', '" . $message . "')");
      }
      }

      $nombreDeMessagesParPage = 10;

      $retour = mysql_query('SELECT COUNT(*) AS nb_messages FROM livreor');
      $donnees = mysql_fetch_array($retour);$totalDesMessages = $donnees['nb_messages'];

      $nombreDePages = ceil($totalDesMessages / $nombreDeMessagesParPage);

      echo 'Page : ';
      for ($i = 1 ; $i <= $nombreDePages ; $i++)
      {
      echo '<a href="livreor.php?page=' . $i . '">' . $i . '</a> ';
      }
      ?>

      </p>
      <form class="formliv" method="post" action="livreor.php">
      <p>
      Pseudo : <input name="pseudo" /><br />
      Message :<br />
      <textarea name="message" rows="8" cols="35"></textarea><br />
      <input type="submit" value="Envoyer" />
      </p>
      </form>
      <p class="pagesliv">

      <?php

      if (isset($_GET['page']))
      {
      $page = intval($_GET['page']);
      }
      else
      {
      $page = 1;
      }

      $premierMessageAafficher = ($page - 1) * $nombreDeMessagesParPage;

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

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

      mysql_close();
      ?>

      <?php
      mysql_connect("localhost", "root", "");
      mysql_select_db("sitecoum");

      if (isset($_POST['pseudo']) AND isset($_POST['message']))
      {
      $pseudo = mysql_real_escape_string(htmlspecialchars($_POST['pseudo']));
      //mysql_real_escape_string et htmlspecialchars par mesure de sécurité
      $message = mysql_real_escape_string(htmlspecialchars($_POST['message']));
      $message = nl2br($message);

      mysql_query("INSERT INTO livreor VALUES('', '" . $pseudo . "', '" . $message . "')");
      }

      $nombreDeMessagesParPage = 500;

      $retour = mysql_query('SELECT COUNT(*) AS nb_messages FROM livreor');
      $donnees = mysql_fetch_array($retour);$totalDesMessages = $donnees['nb_messages'];

      $nombreDePages = ceil($totalDesMessages / $nombreDeMessagesParPage);

      echo 'Page : ';
      for ($i = 1 ; $i <= $nombreDePages ; $i++)
      {
      echo '<a href="livreor.php?page=' . $i . '">' . $i . '</a> ';
      }
      ?>