A voir également:
- Requete sql dans php
- Easy php - Télécharger - Divers Web & Internet
- Erreur lors de l'envoi de la requête facebook marketplace - Forum Facebook
- Php natif - Forum PHP
- Sql server recovery - Télécharger - Gestion de données
- Get_magic_quotes_gpc php 8 ✓ - Forum PHP
13 réponses
Titial69
Messages postés
259
Date d'inscription
lundi 22 février 2010
Statut
Membre
Dernière intervention
11 mars 2010
20
10 mars 2010 à 19:40
10 mars 2010 à 19:40
il faurdait que tu entoure le nom de ta catégorie par ' ', exemple :
$sqlA="SELECT id,titre,chapeau,date,categorie,img FROM wb_article ORDER BY date DESC WHERE visible=1 AND categorie='".$_GET['href']."'";
arthezius
Messages postés
3538
Date d'inscription
jeudi 15 mai 2008
Statut
Membre
Dernière intervention
11 septembre 2016
475
10 mars 2010 à 19:43
10 mars 2010 à 19:43
Essai ça:
$sqlA='SELECT id,titre,chapeau,date,categorie,img FROM wb_article WHERE visible="1" AND categorie="'.mysql_real_escape_string($_GET['href']).'" ORDER BY date DESC;
Titial69
Messages postés
259
Date d'inscription
lundi 22 février 2010
Statut
Membre
Dernière intervention
11 mars 2010
20
10 mars 2010 à 19:45
10 mars 2010 à 19:45
exact, il faut aussi mettre entre guillement le "1", après je crois que ca ne change rien si on utilise " ou ', non ?
arthezius
Messages postés
3538
Date d'inscription
jeudi 15 mai 2008
Statut
Membre
Dernière intervention
11 septembre 2016
475
10 mars 2010 à 19:47
10 mars 2010 à 19:47
Non par contre j'ai surtout interverti le ORDER BY avec le WHERE et rajouté la fonction mysql_real_escape_string()
Titial69
Messages postés
259
Date d'inscription
lundi 22 février 2010
Statut
Membre
Dernière intervention
11 mars 2010
20
10 mars 2010 à 19:50
10 mars 2010 à 19:50
ah oui, j'avais meme pas vu ca.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
et bien si j'essaie
$sqlA="SELECT id,titre,chapeau,date,categorie,img FROM wb_article ORDER BY date DESC WHERE visible=1 AND categorie='".$_GET['href']."'";
je garde exactement le même problème qu'il ne veut pas aller dans ma categorie mais pour cette erreur ci cette fois
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'WHERE visible=1 AND categorie='\'roman\''' at line 1
et si j'essaie celui ci
$sqlA='SELECT id,titre,chapeau,date,categorie,img FROM wb_article WHERE visible="1" AND categorie="'.mysql_real_escape_string($_GET['href']).'" ORDER BY date DESC;
et bien il ne m'affiche même plus ma page j'ai directement droit à ceci
PHP Error Message
Parse error: syntax error, unexpected T_STRING in /home/a1568083/public_html/index.php on line 27
Free Web Hosting
mais j'ai quand meme teste en tapant moi meme dans l'url https://www.000webhost.com/migrate?static=true
et il m'affiche ca
Parse error: syntax error, unexpected T_STRING in /home/a1568083/public_html/index.php on line 27
je pense que la premiere requete je l'avais deja essayer mais le mysql_real_escape_string je ne connaissais pas
$sqlA="SELECT id,titre,chapeau,date,categorie,img FROM wb_article ORDER BY date DESC WHERE visible=1 AND categorie='".$_GET['href']."'";
je garde exactement le même problème qu'il ne veut pas aller dans ma categorie mais pour cette erreur ci cette fois
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'WHERE visible=1 AND categorie='\'roman\''' at line 1
et si j'essaie celui ci
$sqlA='SELECT id,titre,chapeau,date,categorie,img FROM wb_article WHERE visible="1" AND categorie="'.mysql_real_escape_string($_GET['href']).'" ORDER BY date DESC;
et bien il ne m'affiche même plus ma page j'ai directement droit à ceci
PHP Error Message
Parse error: syntax error, unexpected T_STRING in /home/a1568083/public_html/index.php on line 27
Free Web Hosting
mais j'ai quand meme teste en tapant moi meme dans l'url https://www.000webhost.com/migrate?static=true
et il m'affiche ca
Parse error: syntax error, unexpected T_STRING in /home/a1568083/public_html/index.php on line 27
je pense que la premiere requete je l'avais deja essayer mais le mysql_real_escape_string je ne connaissais pas
Titial69
Messages postés
259
Date d'inscription
lundi 22 février 2010
Statut
Membre
Dernière intervention
11 mars 2010
20
10 mars 2010 à 20:24
10 mars 2010 à 20:24
essai d'inverser les " et les ' dans la solution 2
arthezius
Messages postés
3538
Date d'inscription
jeudi 15 mai 2008
Statut
Membre
Dernière intervention
11 septembre 2016
475
10 mars 2010 à 20:33
10 mars 2010 à 20:33
Ma requête est bonne. Le souci n'est pas là.
Qu'as tu a la ligne 27 ?
Qu'as tu a la ligne 27 ?
non ca ne change rien mais normalement php ne fait pas de différence entre ' et " juste qu'il faut refermer avec le même et encore la plupart du temps il accepte la fermeture même si on n'utilise pas le même
en fait mon code est rangé sur plusieurs page j'ai donc ma page index avec tout ce qui est php et une page vue.php ou est noté tout ce qui s'affichera à l'écran de l'utilisateur et à la ligne 27 de mon index j'ai juste un include ('vue.php');
arthezius
Messages postés
3538
Date d'inscription
jeudi 15 mai 2008
Statut
Membre
Dernière intervention
11 septembre 2016
475
10 mars 2010 à 21:02
10 mars 2010 à 21:02
Je le vois pas dans ton code cité précédemment...
C'est par ce que j'ai regroupé tout sinon il y a aussi une page config avec tout ce qui est utile à la connection à la base de donnée, une page screen pour le css et la fonction fetchall se trouve sur une page modele.php ou je regroupe mes fonction c'est le systeme que personne n'aime mais avec lequel j'ai apris a coder j'avais un prof qui aimait rangé tout pour que ca reste claire ^^
Après réflexion mon problème est qu'il me rajoute des \ de chaque côté de ma catégorie vu l'avertissement y a t-il une facon de codé qui utilise les \ peut etre pour prendre en compte les ""
Pff encore moi j'ai cru que j'avais trouvé la solution un ami viens de m'apprendre que c'était parce que le serveur utilise une version de php plus récente que la mienne et dans les nouvelles version lorsqu'on fait un $_GET['href'] par exemple et bien il crée de lui même une variable nommée $href de ce fait j'ai directement mis dans ma requete sql la variable
$sqlA="SELECT id,titre,chapeau,date,categorie,img FROM wb_article WHERE visible='1' AND categorie='$href'" ;
mais j'ai maintenant droit à une erreur php lorsque je vais sur une page de catégorie
Warning: Invalid argument supplied for foreach() in /home/a1568083/public_html/vue.php on line 48
cette erreu me signale qu'une des éléments de mon tableau qui est parcouru par ma boucle foreach n'est pas valide j'ai donc vérifié toute mes table et j'ai fini par mettre la verifier ma requete sql par phpmyadmin en remplacant bien entendu $href par le nom d'une catégorie et il me trouve effectivement tout les éléments demandé donc je passe d'un problème à l'autre juste pour m'amuser un peu ^^
$sqlA="SELECT id,titre,chapeau,date,categorie,img FROM wb_article WHERE visible='1' AND categorie='$href'" ;
mais j'ai maintenant droit à une erreur php lorsque je vais sur une page de catégorie
Warning: Invalid argument supplied for foreach() in /home/a1568083/public_html/vue.php on line 48
cette erreu me signale qu'une des éléments de mon tableau qui est parcouru par ma boucle foreach n'est pas valide j'ai donc vérifié toute mes table et j'ai fini par mettre la verifier ma requete sql par phpmyadmin en remplacant bien entendu $href par le nom d'une catégorie et il me trouve effectivement tout les éléments demandé donc je passe d'un problème à l'autre juste pour m'amuser un peu ^^
arthezius
Messages postés
3538
Date d'inscription
jeudi 15 mai 2008
Statut
Membre
Dernière intervention
11 septembre 2016
475
11 mars 2010 à 19:49
11 mars 2010 à 19:49
Quel est le contenu précis du fichier vue.php ?
je vais donc faire un long message
vue.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="fr-BE" lang="fr-BE">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<title><?php echo (TITRE.' - '.$soustitre); ?></title>
<link rel="stylesheet" type="text/css" href="screen.css" media="screen" title="Normal"/>
</head>
<body>
<div id="conteneur">
<div id="entete">
<h1>
<a href="index.php" title="lien vers la page principal" class="lienlogo" >
<img src="logoplein.png" title="Logo de Richard Faymonville" alt="erreur au chargement du logo" id="logo" height="121px" width="159px"/>
</a>
</h1>
</div> <!-- fin en tete -->
<div id="contenu">
<div id="menu">
<ul id="cat">
<li class="titremenu">
Catégories
</li>
<li class="itemmenu">
<a href="index.php" title="retour vers la page d'accueil" class="lienmenu" >
Page Principale
</a>
</li>
<?php
foreach($cate as $cat) {
?>
<li class="itemmenu">
<a href="?href='<?php echo ($cat['href']); ?>'" title="<?php echo $cat['title'];?>" class="lienmenu" >
<?php echo $cat['intitule']; ?>
</a>
</li>
<?php
}
?>
</ul>
</div> <!-- fin menu -->
<div id="corps">
<?php
foreach ($articles as $article){
?>
<ul class="article">
<li class="titre">
<h2>
<a href="?id=<?php echo $article['id']; ?>" class="titre" title="Permet de voir l'articles en entier" >
<?php echo $article['titre']; ?>
</a>
</h2>
</li>
<li class="image">
<a href="?id=<?php echo $article['id']; ?>" class="titre" title="Permet de voir l'articles en entier" >
<img <?php echo $article['img']; ?>/>
</a>
</li>
<li class="date">
<p>
Edité <?php echo strftime('en %Y',strtotime($article['date'])); ?>
</p>
</li>
<li class="chapeau">
<?php echo($article['chapeau']); ?>
</li>
<li class="texte">
<?php echo($article['texte']); ?>
</li>
<li class="vide">
</li>
</ul>
<?php
}
?>
</div><!-- fin corps -->
</div> <!-- fin contenu -->
<div id="pieddepage">
<p class="layout">
<a href="https://www.000webhost.com/migrate?static=true" title="lien vers le portfolio de Tatiana Faymonville" class="lien" >
Layout created by Tatiana
</a>
</p>
</div> <!-- fin pied de page -->
</div> <!-- fin conteneur -->
</body>
</html>
Index.php
<?php
include ('config.php');
include ('modele.php');
mysql_connect(HOST,USER,PASS) or die(mysql_error());
mysql_select_db(DBNAME) or die(mysql_error());
if(isset($_GET['id'])){
if(is_numeric($_GET['id'])){
$sqlA="SELECT id,titre,date,texte,categorie,img FROM wb_article WHERE visible='1' AND id=".$_GET['id'] ;
} else {
$sqlA="SELECT id,titre,chapeau,date,categorie,img FROM wb_article WHERE visible='1' AND id='1' ";
}
}else{
$sqlA="SELECT id,titre,chapeau,date,categorie,img FROM wb_article WHERE visible='1' AND id='1' ORDER BY date DESC";
}
if(isset($_GET['href'])){
$sqlA="SELECT id,titre,chapeau,date,categorie,img FROM wb_article WHERE visible='1' AND categorie=".$_GET['href'] ;
}
$sqlC="SELECT id,intitule,href,title FROM categories";
$cate = fetchAll($sqlC);
$articles = fetchAll($sqlA);
include ('vue.php');
?>
modele.php
<?php
define('TITRE','Formateur Richard Faymonville');
$soustitre = 'Formateur' ;
//$sqlA='SELECT id,titre,texte,chapeau,date FROM wb_article';
//$sqlC='SELECT id,auteurcom,datecom,adresse,site,com FROM commentaires ORDER BY datecom DESC';
function fetchAll($sql){
$res=mysql_query($sql) or die(mysql_error());
while($tuple=mysql_fetch_assoc($res)){
$tuples[]=$tuple;
}
return $tuples;
}
?>
config.php
<?php
define('HOST','localhost');
define('USER','root');
define('PASS','');
define('DBNAME','richard');
?>
Base de donnée
table wb_article
id, titre, chapeau, texte, date, img, cotegorie, visible
exemple:
id= 1
titre = L'academie
chapeau = dans l'academie...
texte = dans l'academie de mon village on apprend la musique
date= 10/03/2010
img = src="" title=""
categorie = roman
visible = 1
table categories
id, intitule, href,title
exemple:
id = 1
intitule = Roman
href = roman
title = lien vers la page des roman
vue.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="fr-BE" lang="fr-BE">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<title><?php echo (TITRE.' - '.$soustitre); ?></title>
<link rel="stylesheet" type="text/css" href="screen.css" media="screen" title="Normal"/>
</head>
<body>
<div id="conteneur">
<div id="entete">
<h1>
<a href="index.php" title="lien vers la page principal" class="lienlogo" >
<img src="logoplein.png" title="Logo de Richard Faymonville" alt="erreur au chargement du logo" id="logo" height="121px" width="159px"/>
</a>
</h1>
</div> <!-- fin en tete -->
<div id="contenu">
<div id="menu">
<ul id="cat">
<li class="titremenu">
Catégories
</li>
<li class="itemmenu">
<a href="index.php" title="retour vers la page d'accueil" class="lienmenu" >
Page Principale
</a>
</li>
<?php
foreach($cate as $cat) {
?>
<li class="itemmenu">
<a href="?href='<?php echo ($cat['href']); ?>'" title="<?php echo $cat['title'];?>" class="lienmenu" >
<?php echo $cat['intitule']; ?>
</a>
</li>
<?php
}
?>
</ul>
</div> <!-- fin menu -->
<div id="corps">
<?php
foreach ($articles as $article){
?>
<ul class="article">
<li class="titre">
<h2>
<a href="?id=<?php echo $article['id']; ?>" class="titre" title="Permet de voir l'articles en entier" >
<?php echo $article['titre']; ?>
</a>
</h2>
</li>
<li class="image">
<a href="?id=<?php echo $article['id']; ?>" class="titre" title="Permet de voir l'articles en entier" >
<img <?php echo $article['img']; ?>/>
</a>
</li>
<li class="date">
<p>
Edité <?php echo strftime('en %Y',strtotime($article['date'])); ?>
</p>
</li>
<li class="chapeau">
<?php echo($article['chapeau']); ?>
</li>
<li class="texte">
<?php echo($article['texte']); ?>
</li>
<li class="vide">
</li>
</ul>
<?php
}
?>
</div><!-- fin corps -->
</div> <!-- fin contenu -->
<div id="pieddepage">
<p class="layout">
<a href="https://www.000webhost.com/migrate?static=true" title="lien vers le portfolio de Tatiana Faymonville" class="lien" >
Layout created by Tatiana
</a>
</p>
</div> <!-- fin pied de page -->
</div> <!-- fin conteneur -->
</body>
</html>
Index.php
<?php
include ('config.php');
include ('modele.php');
mysql_connect(HOST,USER,PASS) or die(mysql_error());
mysql_select_db(DBNAME) or die(mysql_error());
if(isset($_GET['id'])){
if(is_numeric($_GET['id'])){
$sqlA="SELECT id,titre,date,texte,categorie,img FROM wb_article WHERE visible='1' AND id=".$_GET['id'] ;
} else {
$sqlA="SELECT id,titre,chapeau,date,categorie,img FROM wb_article WHERE visible='1' AND id='1' ";
}
}else{
$sqlA="SELECT id,titre,chapeau,date,categorie,img FROM wb_article WHERE visible='1' AND id='1' ORDER BY date DESC";
}
if(isset($_GET['href'])){
$sqlA="SELECT id,titre,chapeau,date,categorie,img FROM wb_article WHERE visible='1' AND categorie=".$_GET['href'] ;
}
$sqlC="SELECT id,intitule,href,title FROM categories";
$cate = fetchAll($sqlC);
$articles = fetchAll($sqlA);
include ('vue.php');
?>
modele.php
<?php
define('TITRE','Formateur Richard Faymonville');
$soustitre = 'Formateur' ;
//$sqlA='SELECT id,titre,texte,chapeau,date FROM wb_article';
//$sqlC='SELECT id,auteurcom,datecom,adresse,site,com FROM commentaires ORDER BY datecom DESC';
function fetchAll($sql){
$res=mysql_query($sql) or die(mysql_error());
while($tuple=mysql_fetch_assoc($res)){
$tuples[]=$tuple;
}
return $tuples;
}
?>
config.php
<?php
define('HOST','localhost');
define('USER','root');
define('PASS','');
define('DBNAME','richard');
?>
Base de donnée
table wb_article
id, titre, chapeau, texte, date, img, cotegorie, visible
exemple:
id= 1
titre = L'academie
chapeau = dans l'academie...
texte = dans l'academie de mon village on apprend la musique
date= 10/03/2010
img = src="" title=""
categorie = roman
visible = 1
table categories
id, intitule, href,title
exemple:
id = 1
intitule = Roman
href = roman
title = lien vers la page des roman