IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

PHP & Base de données Discussion :

connexion pas d'erreur et aucun insertion [PDO]


Sujet :

PHP & Base de données

  1. #1
    Membre régulier
    Homme Profil pro
    Inscrit en
    Octobre 2004
    Messages
    514
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : Belgique

    Informations forums :
    Inscription : Octobre 2004
    Messages : 514
    Points : 107
    Points
    107
    Par défaut 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 : Sélectionner tout - Visualiser dans une fenêtre à part
    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 : Sélectionner tout - Visualiser dans une fenêtre à part
    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

  2. #2
    Membre régulier
    Homme Profil pro
    Inscrit en
    Octobre 2004
    Messages
    514
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : Belgique

    Informations forums :
    Inscription : Octobre 2004
    Messages : 514
    Points : 107
    Points
    107
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
      <?php if(isset($erreur)){ echo "<p>$erreur</p>"; }?>
        <form action="index.php" method="post">
    	Pseudo : <input type="text" name="pseudo"/>
    	<input type="submit" value="tchatter"/>
        </form>
    voilà résolut je dormais ce matin

    <?php if(isset($erreur)){ echo "<p>$erreur</p>"; }?>
    <form action="index.php" method="post">
    Pseudo : <input type="text" name="pseudo_chat"/>
    <input type="submit" value="tchatter"/>
    </form>

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [MySQL] pas d'erreur mais l'insertion dans la base ne marche pas bien
    Par info_sara dans le forum PHP & Base de données
    Réponses: 1
    Dernier message: 21/05/2008, 14h55
  2. aucun affichage avec le cout mais pas d'erreur
    Par skerdreux dans le forum C++
    Réponses: 2
    Dernier message: 15/04/2008, 14h38
  3. Réponses: 3
    Dernier message: 21/01/2008, 15h56
  4. Réponses: 2
    Dernier message: 17/05/2006, 13h23
  5. [Connexion] pas de message d'erreur
    Par kase74 dans le forum Connexion aux bases de données
    Réponses: 1
    Dernier message: 22/04/2005, 10h35

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo