Formulaire php requette et affichage

Fermé
hkahil Messages postés 197 Date d'inscription lundi 16 juillet 2007 Statut Membre Dernière intervention 21 décembre 2012 - 8 mars 2010 à 05:55
hkahil Messages postés 197 Date d'inscription lundi 16 juillet 2007 Statut Membre Dernière intervention 21 décembre 2012 - 11 mars 2010 à 22:07
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
A voir également:

10 réponses

tefymahery Messages postés 80 Date d'inscription mardi 24 novembre 2009 Statut Membre Dernière intervention 2 février 2024 21
8 mars 2010 à 08:00
salut !
Voir directement cette lien si t'a choisi d'utiliser Mysql :
https://sylvie-vauthier.developpez.com/tutoriels/php/grand-debutant/?page=intro-bdd#LVI-2
ou bien celui-ci: https://sylvie-vauthier.developpez.com/tutoriels/php/grand-debutant/

tu va finir par trouver beaucoup d'exemples si tu tape par exemple: " interrogation base Mysql avec PHP", "tutoriel PHP/Mysql", .................
0
avion-f16 Messages postés 19250 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 22 décembre 2024 4 505
8 mars 2010 à 17:38
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
hkahil Messages postés 197 Date d'inscription lundi 16 juillet 2007 Statut Membre Dernière intervention 21 décembre 2012 7
8 mars 2010 à 20:06
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
LelLex Messages postés 1628 Date d'inscription mercredi 18 février 2009 Statut Membre Dernière intervention 5 septembre 2012 112
8 mars 2010 à 22:26
C'est dans mysql_connect(); ?
Tu dois mettre ton pseudo et pass pour te connecter à ta base !
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
hkahil Messages postés 197 Date d'inscription lundi 16 juillet 2007 Statut Membre Dernière intervention 21 décembre 2012 7
8 mars 2010 à 22:48
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
gabbermaniac Messages postés 137 Date d'inscription mercredi 4 mars 2009 Statut Membre Dernière intervention 23 août 2011 12
8 mars 2010 à 22:52
Bonjour,

je te conseille d'aller voir les excellents tutoriels vidéos: https://www.grafikart.fr/tutoriels/systeme-commentaire-php-45

il y a plein de tuto php/mysql, tu peux regarder aussi le tuto ajax pour l'affichage des commentaire.

en espérant t'avoir aidée
0
hkahil Messages postés 197 Date d'inscription lundi 16 juillet 2007 Statut Membre Dernière intervention 21 décembre 2012 7
8 mars 2010 à 23:05
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
tefymahery Messages postés 80 Date d'inscription mardi 24 novembre 2009 Statut Membre Dernière intervention 2 février 2024 21
9 mars 2010 à 07:13
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
hkahil Messages postés 197 Date d'inscription lundi 16 juillet 2007 Statut Membre Dernière intervention 21 décembre 2012 7
9 mars 2010 à 23:36
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
hkahil Messages postés 197 Date d'inscription lundi 16 juillet 2007 Statut Membre Dernière intervention 21 décembre 2012 7
11 mars 2010 à 15:06
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
hkahil Messages postés 197 Date d'inscription lundi 16 juillet 2007 Statut Membre Dernière intervention 21 décembre 2012 7
11 mars 2010 à 22:07
personnes pour m' aider??
0