Erreur php

Résolu/Fermé
Sn4k3r - 7 avril 2008 à 15:47
 Sn4k3r - 8 avril 2008 à 08:42
Bonjour, j'ai un petit soucis avec mon fil d'ariane
les erreurs suivantes me sont renvoyés :

Notice: Undefined index: Site in C:\Program Files\EasyPHP 2.0b1\www\Site\fonction.php on line 11

Notice: Undefined index: index.php in C:\Program Files\EasyPHP 2.0b1\www\Site\fonction.php on line 11


<?php
// Fonction fildarianise
function fildarianise(&$titres, $separateur=' > ')
{

$baseUrl = 'http://'.$_SERVER['HTTP_HOST'];
$retour = '<span class="ariane"><a href=' . $baseUrl . '>' . $titres[0] . '</a>';
$chemin = explode("/", substr($_SERVER['PHP_SELF'], 1));

if (is_array($chemin)) foreach ($chemin as $k=>$v) if ($titres[$v] !== false)
{
$baseUrl .= "/$v";
$titre = isset($titres[$v]) ? $titres[$v] : $v;
$retour .= $separateur . '<a href=' . $baseUrl . '>' . $titre . '</a>';
}
$retour .= '</span>';
return $retour;
}

// Un essai...
$titres = array(0=>'Accueil', 'cat1');
echo "Vous etes ici:"; echo fildarianise($titres);
?>


Si quelqu'un voit d'ou vient le soucis :d j'accepterais sont aide volontier.

Merci

Sn4k3r

1 réponse

Tu peux mettre les numéros de ligne stp ?

Sinon, le "!==", je suis pas sur que ca marche. Essaie avec "!=", ca c'est sur que c'est bon.
0
ligne 11 c'est la :
if (is_array($chemin)) foreach ($chemin as $k=>$v) if ($titres[$v] !== false)
0
je viens de tester le != il faut le laisser sinon la fonction ne fonctionne plus corréctement.
0
artos > Sn4k3r
7 avril 2008 à 16:09
Ben justement, le prob c'est que ta fonction marche pas Oo.
Normalement, un non equal se traduit par != . En tout cas, en php j'ai toujours écrit != et dans les autres langages aussi.
Dans la logique, le "$var !== 4" signifie "$var non equal recoit 4". Donc on peut imaginer que ca renvoie true en permanence car l'attribution ne se fait pas (c'est totalement tordu par les cheveux, je vous l'accorde ;) ).
Mais comme l'erreur est à cette ligne, je pense que ca doit etre ca.
Déjà, imbrique mieux : if, saut de ligne, foreach, saut de ligne, etc... Que si l'erreur vient du foreach ca sera plus simple de la localiser.

Sinon, faudrait donner des infos supplémentaires : que dois faire ton code, etc... Et imbrique mieux.
0
Sn4k3r > artos
8 avril 2008 à 08:00
Salut,

donc j'ai mieux organisé mon code, l'erreur se trouve normalement ici :
if ($titres[$v] !== false)

j'ai fait comme tu m'as dit != mais j'ai toujours la même erreur. Donc si tu vois une autre solution pour résoudre mon problème, je suis preneur.

Ciao
0
Sn4k3r > artos
8 avril 2008 à 08:42
C'est bon, c'est réglé!
Merci de ton aide!

Ciao
0