[PHP] Affichage / ou pas d'un lien HELP PLZ
Résolu
narutoo7
Messages postés
19
Date d'inscription
Statut
Membre
Dernière intervention
-
narutoo7 Messages postés 19 Date d'inscription Statut Membre Dernière intervention -
narutoo7 Messages postés 19 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Voila après de nombreuses heures passé, à essayé de voir où était mon problème, je ne vois pas je vous demande votre aide.
En fait je veux que si un lien existe ( dans la bdd ) alors afficher le lien sinon afficher message disant que c'est indisponible. Le problème qui se pose en fait ce que la page n'affiche que le message "Ici" qu'il y ait un lien dans la bdd ou pas, vu que je suis un néophyte en php je ne vois pas ou est mon erreur, si vous pouviez m'éclairer.
Merci d'avance.
Voici mon code:
<?php
mysql_connect("localhost", "root", ""); // Connexion à MySQL
mysql_select_db("coursphp"); // Sélection de la base coursphp
$id = intval($_GET['id']);
$reponse = mysql_query('SELECT lien FROM episode WHERE id='.$id.' ORDER BY id DESC') or die (mysql_error()); // Requête SQL
if (mysql_num_rows($reponse) > 0)
{
$donnees = mysql_fetch_assoc($reponse);
echo '<strong>Lien :</strong> <a href="'.stripslashes($donnees['lien']).'">Ici</a> ';
}
else
{
echo 'Indisponible';
}
mysql_close();
?>
Voila après de nombreuses heures passé, à essayé de voir où était mon problème, je ne vois pas je vous demande votre aide.
En fait je veux que si un lien existe ( dans la bdd ) alors afficher le lien sinon afficher message disant que c'est indisponible. Le problème qui se pose en fait ce que la page n'affiche que le message "Ici" qu'il y ait un lien dans la bdd ou pas, vu que je suis un néophyte en php je ne vois pas ou est mon erreur, si vous pouviez m'éclairer.
Merci d'avance.
Voici mon code:
<?php
mysql_connect("localhost", "root", ""); // Connexion à MySQL
mysql_select_db("coursphp"); // Sélection de la base coursphp
$id = intval($_GET['id']);
$reponse = mysql_query('SELECT lien FROM episode WHERE id='.$id.' ORDER BY id DESC') or die (mysql_error()); // Requête SQL
if (mysql_num_rows($reponse) > 0)
{
$donnees = mysql_fetch_assoc($reponse);
echo '<strong>Lien :</strong> <a href="'.stripslashes($donnees['lien']).'">Ici</a> ';
}
else
{
echo 'Indisponible';
}
mysql_close();
?>
A voir également:
- [PHP] Affichage / ou pas d'un lien HELP PLZ
- Créer un lien pour partager des photos - Guide
- Lien url - Guide
- Verificateur de lien - Guide
- Affichage double ecran - Guide
- Lien copié - Forum Mobile
2 réponses
Ta ligne de lien m'a l'air un peu trop compliquée
echo '<strong>Lien :</strong> <a href="'.stripslashes($donnees['lien']).'">Ici</a> ';
Es tu sur de l'exécution de la fonction stripslashes ?
Je te propose plutôt ceci :
$lien = stripslashes($donnees['lien']);
echo "<strong>Lien :</strong> <a href='$lien'>Ici</a>";
J'ai utilisé des double-quotes (") après echo et en fin de ligne,
simple quote pour encadrer $lien.
Habituellement, pour travailler sur une base de données, c'est plutôt
$link = mysql_connect("localhost", "root", ""); // Connexion à MySQL
mysql_select_db("coursphp", $link); // Sélection de la base coursphp
echo '<strong>Lien :</strong> <a href="'.stripslashes($donnees['lien']).'">Ici</a> ';
Es tu sur de l'exécution de la fonction stripslashes ?
Je te propose plutôt ceci :
$lien = stripslashes($donnees['lien']);
echo "<strong>Lien :</strong> <a href='$lien'>Ici</a>";
J'ai utilisé des double-quotes (") après echo et en fin de ligne,
simple quote pour encadrer $lien.
Habituellement, pour travailler sur une base de données, c'est plutôt
$link = mysql_connect("localhost", "root", ""); // Connexion à MySQL
mysql_select_db("coursphp", $link); // Sélection de la base coursphp
Je te propose ceci, si j'ai bien compris
$lien = stripslashes($donnees['lien']);
$lien = trim($lien);
if (!empty($lien)) {
echo "<strong>Lien :</strong> <a href='$lien'>$lien</a>";
} else {
// pas de lien ---> mettre ici ce que tu prévois
}
$lien = stripslashes($donnees['lien']);
$lien = trim($lien);
if (!empty($lien)) {
echo "<strong>Lien :</strong> <a href='$lien'>$lien</a>";
} else {
// pas de lien ---> mettre ici ce que tu prévois
}
Miracle !!!!!!!!! ça marche !!!! Je te remercierait jamais assez.
Voici mon code final :
<?php
mysql_connect("localhost", "root", ""); // Connexion à MySQL
mysql_select_db("coursphp"); // Sélection de la base coursphp
$id = intval($_GET['id']);
$reponse = mysql_query('SELECT lien FROM episode WHERE id='.$id.' ORDER BY id DESC') or die (mysql_error()); // Requête SQL
$donnees = mysql_fetch_assoc($reponse);
$lien = stripslashes($donnees['lien']);
$lien = trim($lien);
if (!empty($lien)) {
echo "<strong>Lien :</strong> <a href='$lien'>$lien</a>";
}
else
{
echo "Indisponible";
}
mysql_close();
?>
Et encore une fois merci beaucoup
Voici mon code final :
<?php
mysql_connect("localhost", "root", ""); // Connexion à MySQL
mysql_select_db("coursphp"); // Sélection de la base coursphp
$id = intval($_GET['id']);
$reponse = mysql_query('SELECT lien FROM episode WHERE id='.$id.' ORDER BY id DESC') or die (mysql_error()); // Requête SQL
$donnees = mysql_fetch_assoc($reponse);
$lien = stripslashes($donnees['lien']);
$lien = trim($lien);
if (!empty($lien)) {
echo "<strong>Lien :</strong> <a href='$lien'>$lien</a>";
}
else
{
echo "Indisponible";
}
mysql_close();
?>
Et encore une fois merci beaucoup
- lorsqu'il y a bel et bien un lien dans la table, ça affiche donc "Lien : ici"
- et dans le cas ou il n'y a aucune donnée dans la table (j'ai essayé avec une nouvelle table), ici appellé "episode" ça affiche "Indisponible"
or sachant que moi dans ma table "episode" il y a plus d'une centaine d'épisodes ça m'embête un peu >_<
Je veux qu'à la fin sa donne quelque chose comme ça : http://www.huecomundo.free.fr/onepiece-episode.php?id=364&titre_episode=Oz%20hurle%20%21%21%20Montre-toi%2C%20%E9quipage%20du%20chapeau%20de%20paille
Et encore merci pour ta réponse.