Formulaire php requette et affichage

hkahil Messages postés 243 Statut Membre -  
hkahil Messages postés 243 Statut Membre -
Bonjour,
je suis débutant en php
je souhaiterais faire un formulaire en html deja fait
ensuite cliquer sur "poster" pourqu'il poste le message dans la base de donnée et ensuite faire un echo
pour pouvoir afficher le resultat
par contre vu qu'il y'aura plusieur commentaires je pense qu'il faut faire une boucle afin d'afficher a chaque fois les commentaires dans une div et une zone scrollable
je vois a peu pres ce qu'il faut faire
mais je souhaiterais avoir un exemple concret pour m'en inspirer
si quelqu'un pouvais me fournir un exemple
merci
Configuration: Windows 7 / Firefox 3.5.8

10 réponses

  1. avion-f16 Messages postés 19182 Date d'inscription   Statut Contributeur Dernière intervention   4 511
     
    http://www.siteduzero.com/tutoriel-3-14547-un-livre-d-or.html

    Ton ordinateur ne fait pas ce que tu veux ... mais ce que tu lui dis de faire.
    0
  2. hkahil Messages postés 243 Statut Membre 7
     
    salut jai fais exactement comme dans lexemple du site du zero
    quand je clique sur envoyer mon message
    rien ne se passe
    aucune erreur
    peut tu me corriger stp
    jai repris le meme code
    j'ai créer ma base de donnée : coursphp
    et ma table : livreor
    avec 3 champs: id, pseudo, message
    <!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">
       <head>
           <title>Livre d'or</title>
            <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
     
            <style type="text/css">
            form, .pages
            {
                text-align:center;
            }
            </style>
        </head>
        <body>
     
        <form method="post" action="livreor.php">
            <p>Mon site vous plaît ? Laissez-moi un message !</p>
            <p>
                Pseudo : <input name="pseudo" /><br />
                Message :<br />
                <textarea name="message" rows="8" cols="35"></textarea><br />
                <input type="submit" value="Envoyer" />
            </p>
        </form>
     
        <p class="pages">
     
    <?php
    mysql_connect("localhost", "root", "mysql");
    mysql_select_db("coursphp");
     
    // --------------- Etape 1 -----------------
    // Si un message est envoyé, on l'enregistre
    // -----------------------------------------
     
    if (isset($_POST['pseudo']) AND isset($_POST['message']))
    {
        $pseudo = mysql_real_escape_string(htmlspecialchars($_POST['pseudo'])); // On utilise mysql_real_escape_string et htmlspecialchars par mesure de sécurité
        $message = mysql_real_escape_string(htmlspecialchars($_POST['message'])); // De même pour le message
        $message = nl2br($message); // Pour le message, comme on utilise un textarea, il faut remplacer les Entrées par des <br />
     
        // On peut enfin enregistrer :o)
        mysql_query("INSERT INTO livreor VALUES('', '" . $pseudo . "', '" . $message . "')");
    }
     
    // --------------- Etape 2 -----------------
    // On écrit les liens vers chacune des pages
    // -----------------------------------------
     
    // On met dans une variable le nombre de messages qu'on veut par page
    $nombreDeMessagesParPage = 20; // Essayez de changer ce nombre pour voir :o)
    // On récupère le nombre total de messages
    $retour = mysql_query('SELECT COUNT(*) AS nb_messages FROM livreor');
    $donnees = mysql_fetch_array($retour);
    $totalDesMessages = $donnees['nb_messages'];
    // On calcule le nombre de pages à créer
    $nombreDePages  = ceil($totalDesMessages / $nombreDeMessagesParPage);
    // Puis on fait une boucle pour écrire les liens vers chacune des pages
    echo 'Page : ';
    for ($i = 1 ; $i <= $nombreDePages ; $i++)
    {
        echo '<a href="livreor.php?page=' . $i . '">' . $i . '</a> ';
    }
    ?>
     
    </p>
     
    <?php
     
     
    // --------------- Etape 3 ---------------
    // Maintenant, on va afficher les messages
    // ---------------------------------------
     
    if (isset($_GET['page']))
    {
            $page = $_GET['page']; // On récupère le numéro de la page indiqué dans l'adresse (livreor.php?page=4)
    }
    else // La variable n'existe pas, c'est la première fois qu'on charge la page
    {
            $page = 1; // On se met sur la page 1 (par défaut)
    }
     
    // On calcule le numéro du premier message qu'on prend pour le LIMIT de MySQL
    $premierMessageAafficher = ($page - 1) * $nombreDeMessagesParPage;
     
    $reponse = mysql_query('SELECT * FROM livreor ORDER BY id DESC LIMIT ' . $premierMessageAafficher . ', ' . $nombreDeMessagesParPage);
     
    while ($donnees = mysql_fetch_array($reponse))
    {
            echo '<p><strong>' . $donnees['pseudo'] . '</strong> a écrit :<br />' . $donnees['message'] . '</p>';
    }
     
    mysql_close(); // On n'oublie pas de fermer la connexion à MySQL ;o)
    ?>
     
    </body>
    </html>
    
    
    0
  3. LelLex Messages postés 1753 Statut Membre 112
     
    C'est dans mysql_connect(); ?
    Tu dois mettre ton pseudo et pass pour te connecter à ta base !
    0
  4. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  5. hkahil Messages postés 243 Statut Membre 7
     
    comment je fais pour retrouver mon pseudo et mot de passe
    parce que j'ai pas mis de mot de passe
    et par défaut c root comme pseudo

    mais quand je met root mysql ca me fait aucune erreur
    par contre ca m'affiche rien
    il n' y as pas un moyen d'afficher mes identifier sur easyphp?
    0
  6. hkahil Messages postés 243 Statut Membre 7
     
    mais le site du zéro c parfait
    j'ai refait le même script
    et j'ai vérifier mes identifiant de connexion
    ca marches toujours pas
    pourtant sur le site du zéro ca l'air de bien marcher
    0
  7. tefymahery Messages postés 91 Statut Membre 22
     
    essai ceci:
    hôte:localhost
    utilisateur: root
    mot de passe: /* vide */

    c-à-d:
    <?php
    //------------------- definition des constants ------------------------
    define (SERVEUR, "localhost");
    define (UTILISATEUR, "root");
    define (PASSWORD,"");
    define (BASE,"coursphp");
    //-----------------------------------------------------------------------
    //---------------connexion au serveur -----------------------------------
     $connexion=mysql_pconnect(SERVEUR,UTILISATEUR,PASSWORD);
    if (!$connexion) {
    			echo"impossible de connecter au serveur "; // il faut penser là de changer votre nom de serveur, votre nom d'utlisateur, ou votre mot de pass.peut êtra aussi qu'il y a des erreurs de saisie
    			exit;   // et on arrête
    		}
    // sinon on continue
    //-------------- connexion à la base de données -------------------------
    		$connectdb=mysql_select_db(BASE,$connexion);
    		if (!$connectdb) {
    			echo"impossible de connecter à la base de donnée "; / il faut penser là de changer votre nom de la base  ou il y a des erreur de saisie
    			exit; //et on arrete le programme
    		}
    //-----------sinon on continue
    // --------------- Etape 1 ----------------------------------------------
    // Si un message est envoyé, on l'enregistre
    // ----------------------------------------------------------------------
     
    if (isset($_POST['pseudo']) AND isset($_POST['message']))
    {
        $pseudo = mysql_real_escape_string(htmlspecialchars($_POST['pseudo'])); // On utilise mysql_real_escape_string et htmlspecialchars par mesure de sécurité
        $message = mysql_real_escape_string(htmlspecialchars($_POST['message'])); // De même pour le message
        $message = nl2br($message); // Pour le message, comme on utilise un textarea, il faut remplacer les Entrées par des <br />
     
        // On peut enfin enregistrer :o)
        mysql_query("INSERT INTO livreor VALUES('', '" . $pseudo . "', '" . $message . "')");
    }
     
    // --------------- Etape 2 -----------------
    // On écrit les liens vers chacune des pages
    // -----------------------------------------
     
    // On met dans une variable le nombre de messages qu'on veut par page
    $nombreDeMessagesParPage = 20; // Essayez de changer ce nombre pour voir :o)
    // On récupère le nombre total de messages
    $retour = mysql_query('SELECT COUNT(*) AS nb_messages FROM livreor');
    $donnees = mysql_fetch_array($retour);
    $totalDesMessages = $donnees['nb_messages'];
    // On calcule le nombre de pages à créer
    $nombreDePages  = ceil($totalDesMessages / $nombreDeMessagesParPage);
    // Puis on fait une boucle pour écrire les liens vers chacune des pages
    echo 'Page : ';
    for ($i = 1 ; $i <= $nombreDePages ; $i++)
    {
        echo '<a href="livreor.php?page=' . $i . '">' . $i . '</a> ';
    }
    ?>
    
    0
    1. hkahil Messages postés 243 Statut Membre 7
       
      salut

      ton exemple marches pas
      voici les erreurs:
      Notice: Use of undefined constant SERVEUR - assumed 'SERVEUR' in C:\Program Files\EasyPHP-5.3.1\www\form\livreor.php on line 3
      
      Notice: Use of undefined constant UTILISATEUR - assumed 'UTILISATEUR' in C:\Program Files\EasyPHP-5.3.1\www\form\livreor.php on line 4
      
      Notice: Use of undefined constant PASSWORD - assumed 'PASSWORD' in C:\Program Files\EasyPHP-5.3.1\www\form\livreor.php on line 5
      
      Notice: Use of undefined constant BASE - assumed 'BASE' in C:\Program Files\EasyPHP-5.3.1\www\form\livreor.php on line 6
      
      Warning: mysql_fetch_array() expects parameter 1 to be resource, boolean given in C:\Program Files\EasyPHP-5.3.1\www\form\livreor.php on line 44
      Page : 
      0
  8. hkahil Messages postés 243 Statut Membre 7
     
    salut quelqu'un peut me dire comment je dois faire pour afficher le nom et le message dans ma div
    'jai fai un select et un echo des infos qu'il y'as dans ma base mais rien ne s'affiche

    <?php
    
    //j'inclus ma fichier fonction pour me connecter a la base de donnée.
    include('fonctions.php');
    $html = '';
    $nom = '';
    // je vérifie si le formulaire a été envoyé
    if(!empty($_POST['submit']))
    { 
    	# on récupère les données postés dans le formulaire
    	$nom		= $_POST['nom'];
    	$message	= $_POST['message'];
    	
    	# on se connecte à la BDD en faisant appel à la fonction qu'on a créé
    	connexion();
    	
    	$sql = "INSERT INTO comment 
    				VALUES (
    						'".mysql_real_escape_string($nom)."', 
    						'".mysql_real_escape_string($message)."', 				
    						NOW())";
    	mysql_query($sql) or die('Erreur d\'ajout : '.mysql_error());
    
    	
    	
    				#etape2 récuperer les valeurs
    				
    				
    	#requete pour recuperer les valeurs
    	$sql= "SELECT  nom, message FROM comment ORDER BY nom";
    	$mesMessages = mysql_query($sql) or die('Erreur de Select :'.mysql_error());
    	
    	
    		mysql_close();
    	
    	header("location: index.php");
    	}
    ?>
    
    
    <!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="en" lang="en">
    
    <head>
    	<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
    	
    	<title>Start/Stop Slider</title>
    	
    	<link rel="stylesheet" href="css/style.css" type="text/css" media="screen" charset="utf-8" />
    	
    	<script type="text/javascript" src="js/jquery-1.2.6.js"></script>
    	<script type="text/javascript" src="js/startstop-slider.js"></script>
    	
    </head>
    
    <body>
    
    	<div id="page-wrap">
    		
    		<h2>Start/Stop Slider</h2>
    		
    		<div id="slider">
    
    			<div id="mover">
    		
    				<div id="slide-1" class="slide">
    				
    					<h1>Garden Rack</h1>
    					
    					<p>Donec gravida posuere arcu. Nulla facilisi. Phasellus imperdiet. Vestibulum at metus. Integer euismod. Nullam placerat rhoncus sapien. Ut euismod. Praesent libero. Morbi pellentesque libero sit amet ante. Maecenas tellus.</p>
    					
    					<a href="#"><img src="images/slide-1-image.png" alt="learn more" /></a>
    					
    				</div>
    				
    				<div class="slide">
    				
    					<h1>Tulip Bulbs</h1>
    					
    					<p>Donec gravida posuere arcu. Nulla facilisi. Phasellus imperdiet. Vestibulum at metus. Integer euismod. Nullam placerat rhoncus sapien. Ut euismod. Praesent libero. Morbi pellentesque libero sit amet ante. Maecenas tellus.</p>
    					
    					<a href="#"><img src="images/slide-2-image.png" alt="learn more" /></a>
    					
    				</div>
    				
    				<div class="slide">
    				
    					<h1>Garden Gloves</h1>
    					<?php
    					# On affiche le tableau
    					echo $nom;
    					?>
    					<p>Donec gravida posuere arcu. Nulla facilisi. Phasellus imperdiet. Vestibulum at metus. Integer euismod. Nullam placerat rhoncus sapien. Ut euismod. Praesent libero. Morbi pellentesque libero sit amet ante. Maecenas tellus.</p>
    					
    					<a href="#"><img src="images/slide-3-image.png" alt="learn more" /></a>
    					
    				</div>
    			
    			</div>
    		
    		</div>
    		
    		
    	</div>
    	
    <div id="container">
    		<h1>Ajouter un commentaire</h1>
    		<form action="index.php" method="post" accept-charset="utf-8">
    			<p><label for="nom">Nom : </label><input type="text" name="nom" value="" id="nom" /></p>
    			<p><label for="message"></label>	<TEXTAREA rows="5" cols="30" name="message" id="message"></TEXTAREA></p>
    			<p class="submit"><input type="submit" name="submit" value=":: Ajouter ::" /></p>
    		</form>
    	</div>
    	<?php
    					# On affiche le tableau
    					echo $nom;
    				
    					?>
    </body>
    </html>
    0
  9. hkahil Messages postés 243 Statut Membre 7
     
    personnes pour m' aider??
    0