connexion pas d'erreur et aucun insertion
Bonjour je voudrais me connecter et insérer un pseudo à un base de donnée en PDO cela ne marche pas rien ? une idée?
peut-être un mauvais codage ?
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
| <?php
function connexion_db () {
// On se connecte à MySQL
$user = 'root';
$pass = '';
$base = 'Tchat';
$bdd ='localhost';
try {
$dns = 'mysql:host='.$bdd.';dbname='.$base.'';
// Options de connection
$options = array(
PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES utf8",
PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION
);
$connection = new PDO( $dns, $user , $pass, $options );
} catch ( Exception $e ) {
echo "Connection à MySQL impossible : ", $e->getMessage();
die();
}
return $connection;
}
?> |
script connexion
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81
| <?php
session_start();
require("function.php");
$connection = connexion_db ();
$d =array();
if(!isset($_SESSION["pseudo_chat"]) || empty($_SESSION["pseudo_chat"]) || !isset($_POST["action"])){
$d["erreur"] = "Vous devez être connecté pour utiliser le tchat";
}
else{
extract($_POST);
$pseudo_chat = $_SESSION["pseudo_chat"];
/**
* Action : addMessage
* Permet l'ajout d'un message
* */
if($_POST["action"]=="addMessage"){ // ok touche pas
$message = $message;
$messa=array(':pseudo_chat'=> $pseudo_chat,':message'=> $message,':date'=> time());
$values_messa = join(', ',array_keys($messa));
$req_messa=$connection->prepare( 'INSERT INTO messages_chat ('.str_replace(':','',$values_info).') VALUES('.$values_messa.')' );
$req_messa->execute($messa);
}
/**
* Action : getMessages
* Permet l'affichage des dernier messages
* */
if($_POST["action"]=="getMessages"){
$lastid = floor($lastid);
$sql = $connection->prepare('SELECT * FROM messages_chat WHERE id>:lastid ORDER BY date ASC');
$sql->execute(array(':lastid'=>$lastid));
$d["result"] = "";
$d["lastid"] = $lastid;
while($data = $sql->fetch(PDO::FETCH_OBJ)){
$d["result"] .= '<p><strong>'.$data["pseudo_chat"].'</strong>('.date("d/m/Y H:i:s",$data["date"]).') : '.htmlentities(utf8_decode($data["message"])).'</p>';
$d["lastid"] = $data["id"];
}
$d["erreur"]="ok";
}
/**
* Action : getConnected
* Permet l'affichage des derniers connectés
**/
if($_POST["action"]=="getConnected"){
$times_m_5mins =(60*1);
$sql = $connection->prepare('SELECT pseudo FROM connected WHERE timestamp< :temps');
$sql->execute(array(':temps'=> $times_m_5mins));
$d["result"] = "Connectés : ";
while($data = $sql->fetch(PDO::FETCH_OBJ)){
$d["result"] .= $data["pseudo"].", ";
}
$d["result"] = substr($d["result"],0,-2);
$sql = ('UPDATE connected SET date=:date WHERE id=:id');
$req = $connection->prepare($sql);
$req->execute(array(':date'=> time(),
':id'=> $_SESSION["idTchat"]));
$d["erreur"] = "ok";
}
}
echo json_encode($d);
?> |
Merci de votre aide