PHP: variable vide ? ? ?
Résolu
txiki
Messages postés
6596
Date d'inscription
Statut
Contributeur
Dernière intervention
-
txiki Messages postés 6596 Date d'inscription Statut Contributeur Dernière intervention -
txiki Messages postés 6596 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour,
Je m'arrache les cheveux avec un code php et dont je n'arrive pas à transmettre la variable (enfin, c'est ce que je pense). Le site est visible ici: http://editionsgracianne.free.fr/presse/Liste_Agenda.php
Voici ce qu'il y a dans l'url: code>http://editionsgracianne.free.fr/presse/Fiche_Agenda.php?page=&id=</code>
En plus je voudrais ajouter la source et la date, en plus du lien ce qui fait trois colonnes mais impossible.
Une partie du code de la page Liste_Agenda:
Je vais craaaaaaaaaaquer !
Un aide me serait grandement utile, les vacances sont déjà foutues pour moi. Merci beaucoup d'avance et joyeuses fêtes quand même !
Je m'arrache les cheveux avec un code php et dont je n'arrive pas à transmettre la variable (enfin, c'est ce que je pense). Le site est visible ici: http://editionsgracianne.free.fr/presse/Liste_Agenda.php
Voici ce qu'il y a dans l'url: code>http://editionsgracianne.free.fr/presse/Fiche_Agenda.php?page=&id=</code>
En plus je voudrais ajouter la source et la date, en plus du lien ce qui fait trois colonnes mais impossible.
Une partie du code de la page Liste_Agenda:
<?php $id = $_GET['ID']; // on récupère la requete par la variable $_GET // appel au fichier fonctions_Agenda.php séparé pour les vérifs des limites (= à 20/page) et Nb de pages require 'Fonctions_Agenda.php'; // require 'Fonction_Change_Date.php'; // on va modifier le format de la date en français pour l'affichage // initialisation des variables $nombre = 20; // on va afficher 20 résultats par page. // si la limite a été passée par un lien, on la prend en compte. $limite = (isset($_POST["limite"])) ? $_POST["limite"] : 0; // connection à la DB $link = mysql_pconnect ($host,$user,$pass) or die ('Erreur : '.mysql_error() ); // connection à la base mysql_select_db($db) or die ('Impossible de se connecter à la base'); // sélection de la table // requête SQL qui compte le nombre total d'enregistrements dans la table. $select = 'SELECT count(*) FROM agenda'; $result = mysql_query($select,$link) or die ('Erreur : '.mysql_error() ); $row = mysql_fetch_row($result); $total = $row[0]; // on vérifie la validité de notre variable $limite; if ($limite < 0) $limite = 0; if ($limite > $total) $limite = $total; // requête SQL qui ne prend que le nombre d'enregistrement necessaire à l'affichage. $req = 'SELECT Lien, Source, Date FROM agenda ORDER by ID DESC limit '.$limite.','.$nombre.''; // on affiche les événements dans l'ordre décroissant $result = mysql_query($req) or die ('Erreur : '.mysql_error() ); if ($total) { // on affiche un tableau avec la liste des événements echo "<table width='100%' bgcolor='#FFFFFF' cellspacing='0' cellpadding='0' align='center'\n"; // lecture et affichage des résultats while($row = mysql_fetch_array($result)) { echo "<tr>"; echo "<td bgcolor='#FFFFFF' text-align='left'>"; // on construit le lien vers la page Fiche_Agenda.php en lui passant en paramètre : la page et l'ID printf("<a href=\"Fiche_Agenda.php?page=%s&id=%s\">%s</a>",'',$row['ID'],$row['Lien'],$row['Source'],$row['Date']); // on affiche le lien vers la page cible echo "</tr>"; } echo "</table>";et le code de la page Fiche_Agenda qui détaille le contenu:
<?php // On recupere la variable "id" correspondant à l'événement choisi //ce script est appelé par un click sur le lien n'est ce pas, alors l'id est passé par l'URL donc en GET $id = $_GET['ID']; // on récupère la requete par la variable $_GET // on prends les infos de connexion sur le fichier Fonctions_Agenda.php require 'Fonctions_Agenda.php'; // connection à la DB $link = mysql_pconnect ($host,$user,$pass) or die ('Erreur : '.mysql_error() ); // connection à la base mysql_select_db($db) or die ('Impossible de se connecter à la base'); // sélection de la table // requête SQL qui affiche les infos de la fiche correspondante au lien cliqué $select = "SELECT Titre, Stitre1, Stitre, Info FROM agenda WHERE ID='$id'"; // On selectionne seulement la ligne qui correspond à l'événement choisi $query = mysql_query($select) or die ('Erreur : '.mysql_error() ); $row= mysql_fetch_array($query); // mysql_fetch_array génère un tableau correspondant a la ligne selectionnée de la BDD // on affiche la fiche dans un tableau généré, dans le div id="global" comme le reste des pages. echo "<table width='100%' align='center' border='0' cellspacing='0' cellpadding='6'>"; // on affiche un tableau echo "<tr>\n"; echo "<td><h1>" .$row["Titre"]. "</h1></td>\n"; // (A noter qu'écrit ainsi, le titre ne s'affiche pas bien qu'étant formaté en h1) // affiche la variable Titre echo "</tr>\n"; echo '<tr><td><i><center>$Stitre1</center></i></td></tr>'; // (et ici on voit la variable mais pas son contenu) // affiche la variable Stitre1 echo '<tr><td><i><center>$Stitre</center></i></td></tr>'; // affiche la variable Stitre echo '<tr><td><p>$Info</p></td></tr>'; // affiche la variable Info echo '</table>'; // on ferme le tableau // on n'a pas besoin de \n après la table à cause de la balise <hr> qui suit. mysql_close(); ?>Vous ne pouvez pas vous imaginer le nombre des tests que j'ai effectués mais en vain et là, je n'en peux plus (malgré les lectures et aides diverses un peu partout).
Je vais craaaaaaaaaaquer !
Un aide me serait grandement utile, les vacances sont déjà foutues pour moi. Merci beaucoup d'avance et joyeuses fêtes quand même !
A voir également:
- PHP: variable vide ? ? ?
- Easy php - Télécharger - Divers Web & Internet
- Expert php pinterest - Télécharger - Langages
- Retour a la ligne php - Forum Webmastering
- Alert php - Forum PHP
- Retour a la ligne php ✓ - Forum PHP
2 réponses
J'ai peut être quelque chose :
Essaye de changer cette ligne:
De cette façon:
Je ne comprend pas vraiment ton code, mais je vais faire mon possible pour t'aider. Je suis le sujet.
Essaye de changer cette ligne:
printf("<a href=\"Fiche_Agenda.php?page=%s&id=%s\">%s</a>",'',$row['ID'],$row['Lien'],$row['Source'],$row['Date']);
De cette façon:
echo "<a href='Fiche_Agenda.php?id=$row['ID']"/>$row['Lien']</a>";
Je ne comprend pas vraiment ton code, mais je vais faire mon possible pour t'aider. Je suis le sujet.
Salut desperadosse et merci beaucoup pour avoir regardé le message,
Ton code a une erreur de syntaxe (je le vois à la coloration des lignes) alors j'ai ajouté ' avant le /> (la parenthèse n'y est pas, c'est seulement pour que tu repère l'').
Ça me retourne ceci (avec ton code ou la modif) :
De plus, je ne suis JAMAIS arrivé a afficher 3 champs dans cette liste (Lien, Source et Date). Tu ne peux pas imaginer le nombre incalculable d'essais que j'ai fait !
En tous cas merci d'avance pour ton aide !
Le bonheur est la seule chose que l'on peut donner sans l'avoir.
Ton code a une erreur de syntaxe (je le vois à la coloration des lignes) alors j'ai ajouté ' avant le /> (la parenthèse n'y est pas, c'est seulement pour que tu repère l'').
Ça me retourne ceci (avec ton code ou la modif) :
syntax error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting T_STRING or T_VARIABLE or T_NUM_STRING in /mnt/171/sda/4/e/editionsgracianne/presse/Liste_Agenda.php on line 74
De plus, je ne suis JAMAIS arrivé a afficher 3 champs dans cette liste (Lien, Source et Date). Tu ne peux pas imaginer le nombre incalculable d'essais que j'ai fait !
En tous cas merci d'avance pour ton aide !
Le bonheur est la seule chose que l'on peut donner sans l'avoir.