Acces a localhost

Résolu/Fermé
kemet1 Messages postés 11 Date d'inscription samedi 29 octobre 2016 Statut Membre Dernière intervention 14 novembre 2016 - Modifié par crapoulou le 29/10/2016 à 14:47
kemet1 Messages postés 11 Date d'inscription samedi 29 octobre 2016 Statut Membre Dernière intervention 14 novembre 2016 - 31 oct. 2016 à 12:49
Bonjour,
je suis entrain de coder un chat . j'ai creer une base de donnees et une table mais c'est impossible d'y acceder par le code que voici:

parler.php

<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8" />
        <title>chat</title>
    </head>
    <style>
    form
    {
        text-align:center;
    }
   


    </style>
    <body>
   


 
    <form action="chat_post.php" method="post">
    <p>
        <label for="pseudo">Pseudo</label> : <input type="text" name="pseudo" /> <br />
        <label for="message">Message</label> :  <input type="text" name="message"  /> <br />

        <input type="submit" value="Envoyer" />
    </p>
    </form>


<?php

// Connexion à la base de données

try

{

    $bdd = new PDO('mysql:host=localhost; dbname=dbchat; charset=utf8', 'root', '');

}

catch(Exception $e)

{

        die('Erreur : '.$e->getMessage());

}

// Récupération des 10 derniers messages

$reponse = $bdd->query('SELECT date_creation, pseudo,message FROM chat');


// Affichage  message 

while ($donnees = $reponse->fetch())

{

    echo '<p>' .htmlspecialchars($donnees['date_creation']). htmlspecialchars($donnees['pseudo'])  . htmlspecialchars($donnees['message']) .'<p>';

}


   $reponse->closeCursor();


?>


 </body>
  </html>



parler_post.php


<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8" />
        <title>chatpost</title>
    </head>
<body>
<?php

// Connexion à la base de données

try

{

  $bdd = new PDO('mysql:host=localhost;dbname=dbchat; charset=utf8', 'root', '' );

}

catch(Exception $e)

{

        die('Erreur : '.$e->getMessage());

}


// Insertion du message à l'aide d'une requête préparée

$req = $bdd->prepare('INSERT INTO chat (date_creation ,pseudo, message) VALUES(NOW(),?, ?)');

$req->execute (array($_POST['date_creation'],$_POST['pseudo'], $_POST['message']));


// Redirection du visiteur vers la page parler.php
header('Location: parler.php');

?>

</body>
</html> 


merci pour votre aide.

EDIT : Ajout des balises de code (la coloration syntaxique).
Explications disponibles ici : ICI

Merci d'y penser dans tes prochains messages.


3 réponses

Utilisateur anonyme
29 oct. 2016 à 16:14
Bonjour

Peux-tu préciser en quoi consiste ton problème ? "impossible d'y accéder" est un peu vague. Que fais-tu, à quoi t'attends-tu et que se passe-t-il en fait ?

En première lecture rapide, je vois quand même une erreur :
$req = $bdd->prepare('INSERT INTO chat (date_creation ,pseudo, message) VALUES(NOW(),?, ?)');

$req->execute (array($_POST['date_creation'],$_POST['pseudo'], $_POST['message']));


Tu n'as que deux paramètres (?) dans le prepare, et tu passes un array à trois éléments à l'execute…
Puisque tu as mis NOW() pour date_creation, que fait $_POST['date_creation'] dans les valeurs passées à l'execute ?
0
kemet1 Messages postés 11 Date d'inscription samedi 29 octobre 2016 Statut Membre Dernière intervention 14 novembre 2016
29 oct. 2016 à 20:05
Bonsoir,
Merci le père, aussi pour la correction.(suis novice 2 mois); désolé pour le flou.
Je suis entrain de créer un petit chat sur 2 fichiers( parler.php et parler_post.php).
Ce n'est pas encore terminé mais quand je le teste en mettant: http://localhost/parler_post.php , j'ai ce message:


Impossibile trovare la pagina Web

HTTP 404


Cause più probabili:
•È possibile che nell'indirizzo sia presente un errore di digitazione.
•Se si è fatto clic su un collegamento, potrebbe non essere aggiornato.

(désolé c'est en italien mon pc)




Par contre quand je lance le fichier (parler_post.php) avec firefox, j'ai ce message:

getMessage()); } // Insertion du message à l'aide d'une requête préparée $req = $bdd->prepare('INSERT INTO chat (date_creation ,pseudo, message) VALUES(NOW(),?, ?)'); $req->execute (array($_POST['date_creation'],$_POST['pseudo'], $_POST['message'])); // Redirection du visiteur vers la page parler.php header('Location: parler.php'); ?>





merci encore j'espère que c'est un peu claire.
0
Utilisateur anonyme
29 oct. 2016 à 22:02
Très probablement, le fichier parler_post.php n'est pas à la racine de ton serveur localhost. Ça explique l'erreur 404.
D'ailleurs, ce fichier s'appelle-t-il parler_post.php, ou chat_post.php ? Dans ton formulaire, tu as
<form action="chat_post.php" method="post">
.

Et quand tu dis que tu lances le fichier (parler_post.php) avec firefox, là encore, que fais-tu vraiment ? La manière correcte de "lancer" un fichier php, c'est de taper http://localhost/parler_post.php dans la barre d'adresses. Si tu double-cliques sur le fichier ou que tu le fais glisser sur une icone de firefox, ton serveur web (wamp ou autre ?) n'est pas pris en compte et le php n'est pas interpreté. C'est pour ça que tu vois le texte qui suit le premier > après la balise <?php
0
kemet1 Messages postés 11 Date d'inscription samedi 29 octobre 2016 Statut Membre Dernière intervention 14 novembre 2016
30 oct. 2016 à 11:26
Bonjour le père
Si le fichier s'appelle parler_post.php( j'ai corrigé action); la base de donnée s'apelle dbchat et la table s'appelle chat

J'ai mis les 2 fichiers à l'adresse:C/wamp64/www
Cependant le fichier parler.php fonctionne mais le fichier parler_post.php fait toujours erreur 404....

Cependant quand je crée un projet ça n'apparait pas quand j'ouvre phpmyadmin pour créer une base de donnée.

J'espère ça na fait pas trop de questions à la fois.. merci
0
Utilisateur anonyme
30 oct. 2016 à 12:13
Je viens de remarquer un problème dans ton fichier parler_post.php : ton code php devrait être AVANT le <!DOCTYPE> sinon ton header("Location:...") ne pourra pas marcher.
D'ailleurs, ton fichier parler_post.php tel qu'il est n'affiche rien du tout, ce qui n'est pas grave puisque normalement il doit être suivi d'une redirection. Le HTML de cette page ne sert à rien.

Mais ceci n'explique pas ton erreur 404.

Si ça marche avec parler.php, la seule cause possible que je vois à l'erreur 404 est que tu n'as pas de fichier parler_post.php, ou que tu ne tapes pas correctement http://localhost/parler_post.php. Vérifie bien l'orthographe du nom du fichier, les espaces en trop…
0
kemet1 Messages postés 11 Date d'inscription samedi 29 octobre 2016 Statut Membre Dernière intervention 14 novembre 2016
31 oct. 2016 à 12:49
Bonjour le père ,vous avez vu juste j'ai retappé l'adresse et ça a marché....

Encore merci.
0