Problème avec echo

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 : Problème avec echo

Re: Problème avec echo

par matmu12 » 17 avr. 2011, 21:27

Désolé j'avais oublié, c'est corrigé ;)

Re: Problème avec echo

par Ryle » 17 avr. 2011, 18:46

Modération :
Si ta question est résolue, pense à l'indiquer pour que les futures personnes qui voudront consulter ce sujet sachent qu'il contient une solution.
Tu peux réaliser cette opération toi-même en cliquant sur le bouton Image en haut à droite de la réponse qui te semble la plus pertinente.

Re: Problème avec echo

par matmu12 » 17 avr. 2011, 16:24

Je vous remercie, sa fonctionne impec !! :-)

Re: Problème avec echo

par Ryle » 17 avr. 2011, 14:20

C'est parce que tu mets des apostrophes de partout, du coup pour php il s'agit de chaines de texte qui ne sont pas interprétées ;)
echo 'file_get_contents'.($des).'';      // affiche la chaine "file_get_contents", suivie de la valeur de $des, suivie d'une chaine vide

echo file_get_contents($des); // affiche le résultat de la fonction file_get_contents()

Re: Problème avec echo

par matmu12 » 17 avr. 2011, 11:45

Je viens de comprendre, j'étais hors sujet.
Grace à votre aide j'arrive à éxécuter le script, sauf une petit partie concernant :

Code : Tout sélectionner

abcd = $donnees_messages["ID"]; $des = "txt/txt_court/$abcd.txt"; if(is_file($des))//contrôle que le fichier existe { echo 'file_get_contents'.($des).''; } else { echo 'fichier non disponible'; }
Cela m'affiche : file_get_contentstxt/txt_court/5.txt // ID =( ici )
Mon problème vient du fait que la fonction file_get_content n'est pas éxécuté, savez vous pourquoi ?
Je vous remercie par avance.

Re: Problème avec echo

par matmu12 » 17 avr. 2011, 00:06

Merci de votre aide ;)
J'ai essayer de bidouiller mon code et j'ai donc :

Code : Tout sélectionner

<!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="cs" lang="cs"> <head> <?php include('connexion.php') ?> <title> </title> <meta http-equiv="content-type" content="text/html; charset=utf-8" /> <link rel="stylesheet" type="text/css" href="css/default.css" media="screen" /> </head> <body> <hr class="hidden" /> <div id="view"> <div id="head"> <h1 id="logotype"><?php echo "$toto3 $toto7";?></h1> </div> <hr class="hidden" /> <div id="content"> <div id="contentBlock"> <h2 class="subheader biggest" <?php echo "$toto3 $toto7";?></h2> <?php $messagesParPage=3; //Nous allons afficher 3 messages par page. //Une connexion SQL doit être ouverte avant cette ligne... $retour_total=mysqli_query($conn , 'SELECT COUNT(*) AS total FROM jeux_video'); //Nous récupérons le contenu de la requête dans $retour_total $donnees_total=mysqli_fetch_assoc($retour_total); //On range retour sous la forme d'un tableau. $total=$donnees_total['total']; //On récupère le total pour le placer dans la variable $total. //Nous allons maintenant compter le nombre de pages. $nombreDePages=ceil($total/$messagesParPage); if(isset($_GET['page'])) // Si la variable $_GET['page'] existe... { $pageActuelle=intval($_GET['page']); if($pageActuelle>$nombreDePages) // Si la valeur de $pageActuelle (le numéro de la page) est plus grande que $nombreDePages... { $pageActuelle=$nombreDePages; } } else // Sinon { $pageActuelle=1; // La page actuelle est la n°1 } $premiereEntree=($pageActuelle-1)*$messagesParPage; // On calcul la première entrée à lire // La requête sql pour récupérer les messages de la page actuelle. $retour_messages=mysqli_query($conn , 'SELECT * FROM jeux_video ORDER BY id DESC LIMIT '.$premiereEntree.', '.$messagesParPage.''); while($donnees_messages=mysqli_fetch_assoc($retour_messages)) // On lit les entrées une à une grâce à une boucle { //Je vais afficher les messages dans des petits tableaux. C'est à vous d'adapter pour votre design... //De plus j'ajoute aussi un nl2br pour prendre en compte les sauts à la ligne dans le message. echo ' <div class="item first"> <h3 class="subheader"><a href="'.($donnees_messages["toto3"]).'-'.($donnees_messages["toto7"]).'-'.($donnees_messages["ID"]).'.php">'.($donnees_messages["entreprise"]).'</a></h3> <span class="date"><a href="'.($donnees_messages["toto3"]).'-'.($donnees_messages["toto7"]).'-'.($donnees_messages["ID"]).'.php">Plus de détails</a></span> <div class="in"> <a href="'.($donnees_messages["toto3"]).'-'.($donnees_messages["toto7"]).'-'.($donnees_messages["ID"]).'.php"><img src="images/'.($donnees_messages["toto3"]).'-'.($donnees_messages["toto7"]).'-'.($donnees_messages["image"]).'.jpg" width="140" height="140" alt="" class="left" /></a> <p> <strong>Description</strong> : <br /> <strong>Téléphone</strong> : '.($donnees_messages["telephone"]).'<br /> </p>'; // J'ai fermé mon echo ici // Ici mon bout de code $abcd = $donnees_messages["ID"]; $des = "$abcd.txt"; if(is_file($des))//contrôle que le fichier existe { echo file_get_contents($des); } else { echo fichier non disponible; } <br /> <strong>Site Internet</strong> : $v = $donnees_messages["site_web"]; if($v ==null) echo "N/A"; else echo ("<a href=$v>$v</a>"); <br/> <strong>E-mail</strong> : $vv = $donnees_messages["mail"]; if ($vv == null) echo "N/A"; else echo ("<a href=mailto:$vv>$vv</a>"); <br/> <strong>toto4</strong> : $vvv = $donnees_messages["toto4"]; if($vvv ==null) echo "N/A"; else echo "$vvv"; echo '</div></div>'; //J'ai rajouté des sauts à la ligne pour espacer les messages. } echo '<p align="center">Page : '; //Pour l'affichage, on centre la liste des pages for($i=1; $i<=$nombreDePages; $i++) //On fait notre boucle { //On va faire notre condition if($i==$pageActuelle) //Si il s'agit de la page actuelle... { echo ' [ '.$i.' ] '; } else //Sinon... { echo ' <a href="index.php?page='.$i.'">'.$i.'</a> '; } } echo '</p>'; //Ici mon dernier echo ?> </div> </body> </html>
Entre temps je suis passer sur du mysqli.
Mais quand j'execute le code j'ai : Parse error: syntax error, unexpected T_STRING, expecting ',' or ';'

Re: Problème avec echo

par Ryle » 16 avr. 2011, 23:27

Tout simplement en fermant ta chaine avant :)
echo '<h3 class="subheader"><a href="'.stripslashes($donnees_messages["jeux"]).'-'.stripslashes($donnees_messages["titre"]).'-'.stripslashes($donnees_messages["ID"]).'.php"><'.stripslashes($donnees_messages["date"]).'</a></h3>
        <span class="date"><a href="'.stripslashes($donnees_messages["jeux"]).'-'.stripslashes($donnees_messages["titre"]).'-'.stripslashes($donnees_messages["ID"]).'.php">Plus de détails</a></span>';
// d'abord tu termines la chaine 
// et ici tu peux rajouter ton bout de code ,)
// et il te suffit ensuite de rajouter un nouvel echo et de poursuivre
echo '</div>';

Re: Problème avec echo

par matmu12 » 16 avr. 2011, 23:15

Merci pour votre réponse :-)
Mais c'est la que je sèche je n'arrive pas à le scinder et du coup je bloque oO
Comment procèder pour scinder le script ?

Re: Problème avec echo

par Ryle » 16 avr. 2011, 22:35

C'est parce que tu ajoutes ton code au milieu du echo, du coup il est considéré comme une chaine de caractère et affiché comme tel... Coupe ton echo en 2 et tu pourras mettre ton code php entre ces deux instructions :)

Re: Problème avec echo

par matmu12 » 16 avr. 2011, 21:39

Merci ;)
Mais en faite elles sont bien présente, j'ai juste donnée une partie du script, le voici en entier :

Code : Tout sélectionner

<!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="cs" lang="cs"> <head> <title></title> <meta http-equiv="content-type" content="text/html; charset=utf-8" /> <link rel="stylesheet" type="text/css" href="css/default.css" media="screen" /> </head> <body> <?php //Connexion à la base de données mysql_connect('localhost', 'root', ''); mysql_select_db('test1'); $messagesParPage=3; //Nous allons afficher 3 messages par page. //Une connexion SQL doit être ouverte avant cette ligne... $retour_total=mysql_query('SELECT COUNT(*) AS total FROM jeux_video'); //Nous récupérons le contenu de la requête dans $retour_total $donnees_total=mysql_fetch_assoc($retour_total); //On range retour sous la forme d'un tableau. $total=$donnees_total['total']; //On récupère le total pour le placer dans la variable $total. //Nous allons maintenant compter le nombre de pages. $nombreDePages=ceil($total/$messagesParPage); if(isset($_GET['page'])) // Si la variable $_GET['page'] existe... { $pageActuelle=intval($_GET['page']); if($pageActuelle>$nombreDePages) // Si la valeur de $pageActuelle (le numéro de la page) est plus grande que $nombreDePages... { $pageActuelle=$nombreDePages; } } else // Sinon { $pageActuelle=1; // La page actuelle est la n°1 } $premiereEntree=($pageActuelle-1)*$messagesParPage; // On calcul la première entrée à lire // La requête sql pour récupérer les messages de la page actuelle. $retour_messages=mysql_query('SELECT * FROM jeux_video ORDER BY id DESC LIMIT '.$premiereEntree.', '.$messagesParPage.''); while($donnees_messages=mysql_fetch_assoc($retour_messages)) // On lit les entrées une à une grâce à une boucle { //Je vais afficher les messages dans des petits tableaux. C'est à vous d'adapter pour votre design... //De plus j'ajoute aussi un nl2br pour prendre en compte les sauts à la ligne dans le message. // C'est ici que sa se corse echo ' <div class="item first"> <h3 class="subheader"><a href="'.($donnees_messages["toto1"]).'-'.($donnees_messages["toto3"]).'-'.($donnees_messages["ID"]).'.php">'.($donnees_messages["toto4"]).'</a></h3> <span class="date"><a href="'.($donnees_messages["toto1"]).'-'.($donnees_messages["toto3"]).'-'.($donnees_messages["ID"]).'.php">Plus de détails</a></span> <div class="in"> <a href="'.($donnees_messages["toto1"]).'-'.($donnees_messages["toto3"]).'-'.($donnees_messages["ID"]).'.php"><img src="images/'.($donnees_messages["toto1"]).'-'.($donnees_messages["toto3"]).'-'.($donnees_messages["image"]).'.jpg" width="140" height="140" alt="" class="left" /></a> <p> <strong>Description</strong> : <br /> <strong>Téléphone</strong> : '.($donnees_messages["toto2"]).'<br /> </p> // C'est A partir de la que sa foire $abcd = $donnees_messages["ID"]; $des = "$abcd.txt"; if(is_file($des))//contrôle que le fichier existe { echo file_get_contents($des); } else { echo fichier non disponible; } <br /> <strong>Site Internet</strong> : $v = $donnees_messages["site_web"]; if($v ==null) echo "N/A"; else echo ("<a href=$v>$v</a>"); <br/> <strong>E-mail</strong> : $vv = $donnees_messages["mail"]; if ($vv == null) echo "N/A"; else echo ("<a href=mailto:$vv>$vv</a>"); <br/> <strong>toto5</strong> : $vvv = $donnees_messages["toto5"]; if($vvv ==null) echo "N/A"; else echo "$vvv"; </div></div>'; //J'ai rajouté des sauts à la ligne pour espacer les messages. } echo '<p align="center">Page : '; //Pour l'affichage, on centre la liste des pages for($i=1; $i<=$nombreDePages; $i++) //On fait notre boucle { //On va faire notre condition if($i==$pageActuelle) //Si il s'agit de la page actuelle... { echo ' [ '.$i.' ] '; } else //Sinon... { echo ' <a href="index.php?page='.$i.'">'.$i.'</a> '; } } echo '</p>'; ?> </div>

Re: Problème avec echo

par Invité » 16 avr. 2011, 21:32

salut

tu as juste oublié les p'tites balises

<?php


?>
voila ...++ :D

Problème avec echo

par matmu12 » 16 avr. 2011, 20:22

Bonjour,
Je suis un débutant en php et j'ai décidé de venir ici pour recourir aux avis d'experts :-)

J'ai un script A :

Code : Tout sélectionner

$abcd = $donnees_messages["ID"]; $des = "txt/txt_court/$abcd.txt"; if(is_file($des))//contrôle que le fichier existe { echo file_get_contents($des); } else { echo "fichier non disponible"; } <br /> <strong>Jeux</strong> : $v = $donnees_messages["jeux"]; if($v ==null) echo "N/A"; else echo ("<a href='$v'>$v</a>"); <br/> <strong>toto</strong> : $vv = $donnees_messages["toto"]; if ($vv == null) echo "N/A"; else echo ("<a href=mailto:$vv>$vv</a>"); <br/> <strong>toto2</strong> : $vvv = $donnees_messages["toto2"]; if($vvv ==null) echo "N/A"; else echo $vvv;
Que je souhaite intégrer a mon code ici :

Code : Tout sélectionner

echo '<h3 class="subheader"><a href="'.stripslashes($donnees_messages["jeux"]).'-'.stripslashes($donnees_messages["titre"]).'-'.stripslashes($donnees_messages["ID"]).'.php"><'.stripslashes($donnees_messages["date"]).'</a></h3> <span class="date"><a href="'.stripslashes($donnees_messages["jeux"]).'-'.stripslashes($donnees_messages["titre"]).'-'.stripslashes($donnees_messages["ID"]).'.php">Plus de détails</a></span> // et ici je veux rajouter mon bout de code^^ </div>';
Je dois donc le rajoiter juste avant la balise div. Mais quand je fais cela mon code n'est pas interprété et le navigateur l'affiche tel quel.
Du coup je n'arrive pas à faire fonctionner les deux.
Si quelqu'un serait me renseigner se serait super !!
Un enorme merci par avance.