ereur sur un code php

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : ereur sur un code php

par charabia » 03 mars 2006, 11:37

N'oublies pas le tit [résolu] ;)

par Johnstyle » 03 mars 2006, 11:35

Super !!
merci a tout les 2 c'est exactement ce que je voulais :D

par charabia » 03 mars 2006, 11:16

Si tu désires afficher à un endroit précis et unique le contenu en cliquant sur chaque lien, tu peux une deuxième requête qui ta prend la variable passé en URL.
<?php
require_once("admin/config.php");
$db = mysql_connect($dbhost, $dbuname, $dbpass);
mysql_select_db($dbname,$db);

// on cr&eacute;e la requ&ecirc;te SQL
$sql = "SELECT id,titre,contenu FROM js_pages";

// on envoie la requête
$req = mysql_query($sql) or die('Erreur SQL !<br>'.$sql.'<br>'.mysql_error());

// on fait une boucle qui va faire un tour pour chaque enregistrement 
while($data = mysql_fetch_assoc($req)) 
{
	// on affiche les informations de l'enregistrement en cours 
	echo '<br><a href="index.php?page='.$data['id'].'">'.$data['titre'].'</a><br>';
}

if(isset($_GET['page']))
{
$sql1 = "SELECT contenu FROM js_pages WHERE id=".$_GET['page'];
$req1 = mysql_query($sql1) or die('Erreur SQL !<br>'.$sql1.'<br>'.mysql_error());
$data1 = mysql_fetch_assoc($req1);

echo $data1['contenu'];
}

mysql_close($db);
?>

par Hermès » 03 mars 2006, 11:09

Ben le problème c'est que tu as une boucle qui met dans $data les données d'une ligne de ta requête sql et qui recommence jusqu'à ce que toutes les lignes soit parcourues.
Donc quand tu sors de la boucle, tu as $data qui est vide, autrement dit, tu ne pourras pas afficher $data["contenu"];
while($data = mysql_fetch_assoc($req)) {
   // on affiche les informations de l'enregistrement en cours
   echo '<br><a href="npage2?page='.$data['id'].'">'.$data['titre'].'</a><br>';
   if($_GET["page"]==$data['id']) {
      echo $data['contenu'];
   }
}
Comme ça, ça affiche $data['contenu'] à chaque étape de la boucle.

par Johnstyle » 03 mars 2006, 11:06

C'est normal que ton
if($_GET["page"]==$data['id'])

 {
 echo $data['contenu'];
 } 
Soit à l'extérieur de ta boucle ?

heu bah en fait j'ai realiser ce code grace a un tutorial et justement j'ai rajouter ça apres
if($_GET["page"]==$data['id'])

 {
 echo $data['contenu'];
 } 
je pensait que ca irai a cet endroit ^^"

par Hermès » 03 mars 2006, 10:35

C'est normal que ton
if($_GET["page"]==$data['id'])

 {
 echo $data['contenu'];
 } 
Soit à l'extérieur de ta boucle ?

ereur sur un code php

par Johnstyle » 03 mars 2006, 03:28

bonjour,
j'ai essayer de creer un code php qui utilise mysql.

ce script permet d'afficher des liens et en fonction du lien sur lequel on clic ont affiche un texte

j'ai juste un problme au niveau de l'affichage du texte

voici mon code :

Code : Tout sélectionner

<? require_once("admin/config.php"); $db = mysql_connect($dbhost, $dbuname, $dbpass); mysql_select_db($dbname,$db); // on cr&eacute;e la requ&ecirc;te SQL $sql = 'SELECT id,titre,contenu FROM js_pages'; // on envoie la requ&ecirc;te $req = mysql_query($sql) or die('Erreur SQL !<br>'.$sql.'<br>'.mysql_error()); // on fait une boucle qui va faire un tour pour chaque enregistrement while($data = mysql_fetch_assoc($req)) { // on affiche les informations de l'enregistrement en cours echo '<br><a href="npage2?page='.$data['id'].'">'.$data['titre'].'</a><br>' ; } if($_GET["page"]==$data['id']) { echo $data['contenu']; } mysql_close($db); ?>

j'ai essaye de chercher l'ereur mais imposible de trouver :(
donc si quelqu'un pourait m'aider ce serai gentil :)
merci