[php] Probléme enregistrement basse de donnée

Résolu
Bonjour,
J'ai voulut un enplacement de texte, qui enregistre l'IP du visiteur.

Hey j'ai réussi a tout casser --'

Quesqui ne va pas ?
<?php

// Require du db.php ou se trouve le systeme de connexion à la base de donnée MySQL
require('db.php');

// --- Verficiation des champs du formulaire ---
if(empty($_POST["message"])){
header('location: formulaire.htm');
}
else{ // Les champs pseudo et message sont bien remplis alors...

// Cration des variables et suppression des caractères spcéciaux
$message = htmlspecialchars(addslashes($_POST["message"]));
$date_heure = date("d/m/Y H:i");
$ip = $REMOTE_ADDR;

// Insertion du message dans la base de donnée
mysql_query("Insert Into livredor (message,date_heure,ip) VALUES ('''$message','$date_heure','$ip')') or die ("Erreur insert: ".mysql_error());
}
// Fermeture de la connexion MySQL
@mysql_close();
header('location: ok.html');
?>
Configuration: Windows Vista
Internet Explorer 7.0

6 réponses

  1. Sans savoir ce qui ne marche pas (erreur de syntaxe ? erreur d'exécution ? ...) on constate une erreur de syntaxe de l'instruction mysql_query qui devrait, peut-être, être :

    mysql_query( "Insert Into livredor (message,date_heure,ip) VALUES ('$message','$date_heure','$ip')") or die ("Erreur insert: ".mysql_error());
    1. Merci, tout est nikel ;)
  2. Essaye avec :
    <?php
    $ip = $_SERVER[REMOTE_ADDR];
    echo '<br>...' . $ip;
    ?>
    


    Qu'est-ce-qui est affiché ? (un conseil méthodologique : pour déboguer, ajouter des echo judicieusement placés pour voir comment le script se comporte)

    Je viens d'essayer et avec free ça marche.
    1. Enfin, les commentaires sont enregistrée.... ( avec le reste )

      Mais pas les IP :-/

      C'est le script ou c'est mon ebergeur qui limite sa ?

      <?php
      
      // Require du db.php ou se trouve le systeme de connexion à la base de donnée MySQL
      require('db.php');
      
      // --- Verficiation des champs du formulaire ---
      if(empty($_POST["message"])){
      header('location: formulaire.htm');
      }
      else{ // Les champs pseudo et message sont bien remplis alors...
      
      // Cration des variables et suppression des caractères spcéciaux
      $message = htmlspecialchars(addslashes($_POST["message"]));
      $date_heure = date("d/m/Y H:i");
      $ip = $REMOTE_ADDR;
      
      // Insertion du message dans la base de donnée
      mysql_query( "Insert Into livredor (message,date_heure,ip) VALUES ('$message','$date_heure','$ip')") or die ("Erreur insert: ".mysql_error());
      }
      // Fermeture de la connexion MySQL
      @mysql_close();
      header('location: ok.html');
      ?>
      1. Fin si y reste encor un probléme... (C'est le dergnier jvous jure ^^ )

        L'ip ne s'affiche pas, mais elle est dans la base de donnée !

        <td bgcolor="#E1E1E1">Posté par <?php echo $donnee[pseudo]; ?> le <?php echo $donnee[date_heure]; ?><?php echo $donnee[ip]; ?></td>