Aller au contenu

Appel de variable sans effet [Réglé]


Sujets conseillés

Posté

Bonjour,

Voilà, je commence à me mettre à faire du php depuis une feuille blanche et là je bloque sur un truc probablement tout bête.

Je souhaite faire des pages scindées en 2 fichiers :

nom_de_page.php

corps.php

Dans corps.php, je dois avoir une iframe et son url (src) est variable selon le fichier nom_de_page.php appelé.

Donc dans nom_de_page.php je définis une variable appelée fram00 :

<?
$fram00 = "url_de_la_frame";
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<head>
<title>....</title>
</head>
<body>
<? include('corps.php'); ?>
[code HTML du footer]
</body>
</html>

Et dans corps.php :

[code HTML]
<iframe align='center' ......  src='
<?
echo $fram00;
?>
' style='border:0px;'></iframe>
[code HTML]

Ou bien (et ça me semble plus propre)

[code HTML]
<?
echo "<iframe align='center' ......  src='";
echo $fram00;
echo "' style='border:0px;'></iframe>";
[code HTML]

Tout s'affiche OK sauf que ma variable reste vide et, dans la page lue, j'ai src=' ' :blush:

Je suppose que c'est du fait que la variable est définie dans un fichier et appelée dans un autre... Il me manque quoi là ?

Merci d'avance !

Posté (modifié)

Non, au contraire, l'include autorise cela.

Je pense que ton html déconne. A la concaténation. As-tu essayé un simple:

[code html]
<?php
echo $frame00;
?>
[code html]?

xpatval

Modifié par xpatval
Posté

Merci pour ta réponse car cela m'a aidé à trouver l'erreur par élimination (j'ai même viré tout l'html pour vérifier mais l'erreur n'était pas là)

En fait, pour l'include, j'avais mis le chemin complet :

<? include ('http://soudomaine.monsite.com/incl/corps.php') ?>

Mais en mettant le chemin relatif :

<? include ('incl/corps.php') ?>

Tout fonctionne au poil !

Je ne pige pas pourquoi cela pose un problème, j'ai pensé à une interaction entre le chemin complet et le code de l'iframe (?), j'ai donc testé avec un texte témoin à la place de l'url de l'iframe => même punition !

Enfin, bref, ça fontionne c'est l'essentiel :)

Merci !

Posté

Toujours mettre un path dans un appel include et pas un chemin d'accès exterieur de type http: //

Çà pose problème parce que le serveur ne connait pas ce type d'adresse, il faut lui donner les chemins par rapport à lui-même, pas par rapport à l'extérieur (il fait trop froid dehors :D)

Posté

Yes ! Je ne savais point mais, effectivement, cela semble logique. Merci !

Enregistred ! [ça fait 2 lignes ;) - presque - private joke]

Veuillez vous connecter pour commenter

Vous pourrez laisser un commentaire après vous êtes connecté.



Connectez-vous maintenant
×
×
  • Créer...