Les conditions PHP if, elseif, else
Résolu
zippeur
Messages postés
197
Date d'inscription
Statut
Membre
Dernière intervention
-
zippeur Messages postés 197 Date d'inscription Statut Membre Dernière intervention -
zippeur Messages postés 197 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
voila je voudrai afficher le lien comme suite
(http://site/index_Fr.php?pg=pages&id=2) si le lien est défini
sinon on affiche
(http://site/index.php) si le lien n'est pas défini
Voici le code :
--------------------
EDIT : Ajout des balises de code.
Merci de bien vouloir utiliser la coloration syntaxique (les balises de code) lorsque tu postes du code sur le forum.
Explications disponibles ici :
https://codes-sources.commentcamarche.net/faq/10686-le-nouveau-codes-sources-comment-ca-marche#balises-code
voila je voudrai afficher le lien comme suite
(http://site/index_Fr.php?pg=pages&id=2) si le lien est défini
sinon on affiche
(http://site/index.php) si le lien n'est pas défini
Voici le code :
--------------------
include('db.php'); doDB(); // Lancer : Construire haut niveau $top_sql = "SELECT * FROM menu_top_level /* WHERE top_level_visible = 'Yes' */ ORDER BY top_level_order ASC"; // Créer une requête de base de données $top_res = mysqli_query($mysqli, $top_sql) or die(mysqli_error($mysqli)); // Vérifier la connexion et d'exécuter la requête if ($top_res = mysqli_query($mysqli, $top_sql)) { // Si la requête contient les résultats ... while ($row = mysqli_fetch_array($top_res)) { // Boucle à travers chaque ligne donnée $menu_block .= "<li><a href='$row[top_level_url]'>".$row[top_level_name]."</a>";
EDIT : Ajout des balises de code.
Merci de bien vouloir utiliser la coloration syntaxique (les balises de code) lorsque tu postes du code sur le forum.
Explications disponibles ici :
https://codes-sources.commentcamarche.net/faq/10686-le-nouveau-codes-sources-comment-ca-marche#balises-code
A voir également:
- Php if plusieurs conditions
- Easy php - Télécharger - Divers Web & Internet
- Mise en forme conditionnelle excel plusieurs conditions - Guide
- Expert php pinterest - Télécharger - Langages
- Mise en forme conditionnelle 2 conditions ✓ - Forum Bureautique
- Je ne suis pas un robot confidentialité - conditions - Forum Facebook
7 réponses
Bonjour,
1 - Merci de bien vouloir utiliser la coloration syntaxique (les balises de code) lorsque tu postes du code sur le forum.
Explications disponibles ici :
https://codes-sources.commentcamarche.net/faq/10686-le-nouveau-codes-sources-comment-ca-marche#balises-code
2 - Ton souci se trouve donc au niveau de la ligne :
Si oui...
écrit avec des IF (de façon plus classique...)
Ce qui revient à faire (en écriture Ternaire) :
Avant de poser une question, merci de lire la charte du site.
Cordialement, Jordane
1 - Merci de bien vouloir utiliser la coloration syntaxique (les balises de code) lorsque tu postes du code sur le forum.
Explications disponibles ici :
https://codes-sources.commentcamarche.net/faq/10686-le-nouveau-codes-sources-comment-ca-marche#balises-code
2 - Ton souci se trouve donc au niveau de la ligne :
$menu_block .= "<li><a href='$row[top_level_url]'>".$row[top_level_name]."</a>";??
Si oui...
écrit avec des IF (de façon plus classique...)
if( isset($row['top_level_url'])){ $URL =$row['top_level_url'] ; }else{ $URL ='http://site/index.php' ; } $menu_block .= "<li><a href='".$URL."'>".$row['top_level_name']."</a>";
Ce qui revient à faire (en écriture Ternaire) :
$URL = isset($row['top_level_url']) ? $row['top_level_url'] : 'http://site/index.php' ; $menu_block .= "<li><a href='".$URL."'>".$row['top_level_name']."</a>";
Avant de poser une question, merci de lire la charte du site.
Cordialement, Jordane
Oui exactement mon probable se trouve au niveau de cette ligne
mais se que je veux c'est pas exactement ça,
je 'explique:
quand je survole un lien qui mène a une page par rapport a (url = id ) de la page ça me donne ça (site/index.php?pg=pages&id=2)
quand le lien n'a aucun chemin le id url n'es pas acheminer je veux que ça me donne ça
(site/index.php#)
mais se que je veux c'est pas exactement ça,
je 'explique:
quand je survole un lien qui mène a une page par rapport a (url = id ) de la page ça me donne ça (site/index.php?pg=pages&id=2)
quand le lien n'a aucun chemin le id url n'es pas acheminer je veux que ça me donne ça
(site/index.php#)
avec ton code ça donne ça:
si le lien existe ça donne ça
http://site/2
se que je veux moi c'est
http://site/index.php?pg=pages&id=2
s'il est vide ça donne ça
http://site/index.php
si le lien existe ça donne ça
http://site/2
se que je veux moi c'est
http://site/index.php?pg=pages&id=2
s'il est vide ça donne ça
http://site/index.php
if( isset($row['top_level_url'])){ $URL =$row['top_level_url'] ; }else{ $URL ='http://site/index.php' ; } $menu_block .= "<li><a href='".$URL."'>".$row['top_level_name']."</a>";
Donc.. tu veux.. si $row['top_level_url'] existe
récupérer la valeur qui se trouve après le dernier SLASH .. pour l'ajouter à l'URL :
Donc :
récupérer la valeur qui se trouve après le dernier SLASH .. pour l'ajouter à l'URL :
http://site/index.php?pg=pages&id=
Donc :
if( isset($row['top_level_url'])){ $urlTmp = "http://site/2"; $arrTmp = explode('/',$urlTmp); $id = $arrTmp[count($arrTmp)-1]; if($id){ $URL = "http://site/index.php?pg=pages&id=".$id; }else{ $URL ='http://site/index.php' ; } }else{ $URL ='http://site/index.php' ; } $menu_block .= "<li><a href='".$URL."'>".$row['top_level_name']."</a>";
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
opps un léger problème
le id de URL ne change pas!!
c'est du a
if( isset($row['top_level_url'])){
$urlTmp = "http://site/1";
----------------------------------
$urlTmp = "http://site/1"; 1=$id
$urlTmp = "[http://site/$row['top_level_url
en gros le id change mais sur mon site le id de page ne change pas il reste sur 1! ;(
le id de URL ne change pas!!
c'est du a
if( isset($row['top_level_url'])){
$urlTmp = "http://site/1";
----------------------------------
$urlTmp = "http://site/1"; 1=$id
$urlTmp = "[http://site/$row['top_level_url
en gros le id change mais sur mon site le id de page ne change pas il reste sur 1! ;(