PhPMyAdmin , minichat

Résolu
anonyme -  
 anonyme -
Bonjour,

Je suis les tutoriels du site du zero , en ce moment je me suis mis au php/sql , et je bloque a la création du minichat , je ne sais pas comment créer la table sous phpmyadmin , quels caractéristique choisir...

Pouvez vous m'aider ?

Anonyme
Configuration: Windows Vista
Firefox 3.0.11

9 réponses

  1. avion-f16 Messages postés 19182 Date d'inscription   Statut Contributeur Dernière intervention   4 511
     
    Pour l'id, utilise un TINYINT en unsigned en AI (auto_increment)
    Pour le texte (auteur + message), je pense qu'un TINYTEXT devrait suffire.
    1
  2. avion-f16 Messages postés 19182 Date d'inscription   Statut Contributeur Dernière intervention   4 511
     
    CREATE TABLE `teste`.`minchat` (
    `id` TINYINT UNSIGNED NOT NULL AUTO_INCREMENT ,
    `texte` TINYTEXT NOT NULL ,
    PRIMARY KEY ( `id` )
    ) ENGINE = InnoDB;
    1
  3. avion-f16 Messages postés 19182 Date d'inscription   Statut Contributeur Dernière intervention   4 511
     
    Quand je disais Pour le texte (auteur + message), je pense qu'un TINYTEXT devrait suffire. , j'entendais pas là pour les deux champs auteur + message et pas un champs "texte" qui contiendra l'auteur + le message.

    CREATE TABLE `teste`.`minchat` (
    `id` TINYINT UNSIGNED NOT NULL AUTO_INCREMENT ,
    `pseudo` TINYTEXT NOT NULL ,
    `message` TINYTEXT NOT NULL,
    PRIMARY KEY ( `id` )
    ) ENGINE = InnoDB;
    1
  4. anonyme
     
    merci beaucoup je vais essayer tout de suite
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. anonyme
     
    zut , il me met :

    Erreur

    requête SQL:

    CREATE TABLE `minichat` (
    `id` TINYINT NOT NULL AUTO_INCREMENT ,
    `texte` TINYTEXT NOT NULL
    ) ENGINE = innodb

    MySQL a répondu:Documentation
    #1075 - Incorrect table definition; there can be only one auto column and it must be defined as a key
    0
  7. anonyme
     
    j'ai coché la case primary , et sa la sauvegardé , mais quand je vais sur mon fichier , j'écrit mon pseudo , ensuite mon message , puis je clique sur la case envoyer , et le message ne s'affiche pas ...
    0
  8. anonyme
     
    le message ne s'affiche pas , je clique sur envoyer ,sa charge , mets rien ne s'affiche.....

    peut etre que le code n'est pas bon ?

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
    <head>
    <title>Mini-chat</title>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
    </head>
    <style type="text/css">
    form
    {
    text-align:center;
    }
    </style>
    <body>

    <?php
    if (isset($_POST['pseudo']) AND isset($_POST['message'])) // Si les variables existent
    {
    if ($_POST['pseudo'] != NULL AND $_POST['message'] != NULL) // Si on a quelque chose à enregistrer
    {
    // D'abord, on se connecte à MySQL
    mysql_connect("localhost", "root", "");
    mysql_select_db("test");

    // On utilise les fonctions PHP mysql_real_escape_string et htmlspecialchars pour la sécurité
    $message = mysql_real_escape_string(htmlspecialchars($_POST['message']));
    $pseudo = mysql_real_escape_string(htmlspecialchars($_POST['pseudo']));

    // Ensuite on enregistre le message
    mysql_query("INSERT INTO minichat VALUES('', '$pseudo', '$message')");

    // On se déconnecte de MySQL
    mysql_close();
    }
    }

    // Que l'on ait enregistré des données ou pas...
    // On affiche le formulaire puis les 10 derniers messages

    // Tout d'abord le formulaire :
    ?>

    <form action="minichat.php" method="post">

    <p>
    Pseudo : <input type="text" name="pseudo" /><br />
    Message : <input type="text" name="message" /><br />

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

    </form>

    <?php

    // Maintenant on doit récupérer les 10 dernières entrées de la table
    // On se connecte d'abord à MySQL :
    mysql_connect("localhost", "root", "");
    mysql_select_db("test");

    // On utilise la requête suivante pour récupérer les 10 derniers messages :
    $reponse = mysql_query("SELECT * FROM minichat ORDER BY ID DESC LIMIT 0,10");

    // On se déconnecte de MySQL
    mysql_close();

    // Puis on fait une boucle pour afficher tous les résultats :
    while ($donnees = mysql_fetch_array($reponse) )
    {
    ?>

    <p><strong><?php echo $donnees['pseudo']; ?></strong> : <?php echo $donnees['message']; ?></p>

    <?php
    }
    // Fin de la boucle, le script est terminé !
    ?>

    </body>
    </html>

    je fais localhost , root et pas de mot de passe
    0