Bonjour,
je suis pas un pro du php, je vous prie de n'excuser si je suis pas tres claire !
j'ai un petit site ou j'ai installé un script en php pour afficher des bannieres,
ca marche tres bien quand tout est sur la racine, si j'instale le script dans un dossier ca fonctionne plus
je voudrais savoir comment modifier le chemin d'acces au fichier banniere, je pense que le probleme vient de la
merci
valerie
voici le debut du script
<?
$cpt=0;
$fp = fopen("banniere.txt","r");
while (!feof($fp))
banniere n'est plus dans le meme dossier, et je voudrais le laisser ou il est !
Bonjour, je t'explique en PHP pour reculer de dossier c'est .. et pour avance c'est /NOM...
EXEMPLE...
les dossier:
/racine/banniere/images
/racine/banniere2/Lien
ton script est dans le dossier Banniere... et tu veux accédé au fichier racine.txt qui est evidament dans ton dossier racine...
ton chemin est donc "../racine.txt"
tu veux aller dans IMAGES chercher le fichier: img.jpg : "images/img.jpg"
tu veux aller dans bannieres2 chercher le dossier Lien et le fichier link.php
bonjour, c'est comme en html,
merci clair et comprehensible
j'ai modifié, le script se lance bien, mais il trouve plus les images
en resume:
j'ai un dossier image et le fichier.txt sur la racine, le script fonctionne sur une page qui est sur la racine,
je veux que le meme script fonctionne dans un autre dossier, j'ai change le chemin du fichier .txt, ca marche mais il trouve plus les image qui sont sur la racine ?
je voudrais que mon dossier image fonctionne avec les 2 scripts !
possible
merci
valerie
Définie une variable avant l'inclusion de ton script qui contiendra le chemin relatif à la racine de ton script courant, et réutilises la dans ton script.
E.G : Mon arborescence est la suivante :
Aucun dit :
.
..
index.php
includes
-> banniere.php ( script php de bannière )
common
-> banniere_config.txt ( script contenant les infos pour les bannières )
medias
-> banniere1.gif
-> banniere2.gif
-> ...
pages
-> listeBannieres.php ( script appelant banniere.php )
Si je veux appeler le script banniere.php enregistré dans le dossier 'includes' depuis la page index.php, je dois spécifier le chemin ( PATH again ) : require('includes/banniere.php');
Si je veux l'appeler depuis le fichier : listeBannieres.php enregistré dans le dossier 'pages' , je dois spécifier : require('../includes/banniere.php');
Mais avant, pour indiquer quel est le PATH relatif du dossier du script afin d'afficher les images, il te faudra définir une variable/constante du genre : define('PATH_TO_IMAGES', 'images/'); pour index.php, define('PATH_TO_IMAGES', '../images/'); pour pages/listeBannieres.php
Ensuite dans ton fichier : banniere.php , il te suffira de faire un <?=PATH_TO_IMAGES?> dans l'attribut 'src' de ta balise img avant le nom du fichier image.
Pour faire simple comme explication du chemin sur un système d'exploitation quelconque, imagine le comme un itinéraire pour aller d'une destination à une autre qui correspond en fait à une série de commande dont les seuls choix sont "prendre une voie", "reculer au carrefour précédent" , "rester à la même place". Ces commandes sont séparées par un caractère particulier qui doit être protégé lorsqu'il compose un nom de fichier ( pour ne pas qu'on pense qu'il s'agisse d'un chemin aussi ). Sous linux ce caractère est le symbole slash :"/" sous windows c'est le backslash ou anti-slash : "\"
Les 3 commandes sont :
-> Pour rester à la même place, le symbole de ponctuation "."
-> Pour remonter d'un dossier dans l'arborescence , le double symbole de ponctuation ".."
-> Pour rentrer dans un dossier: le nom du dossier.
Ainsi :
-> "./" correspond au dossier courant
-> "././" correspond également au dossier courant ( commande 1) rester à la même place, commande 2) rester à la même place )
-> "../" correspond au dossier au dessus
-> "./../" correspond également au dossier au dessus. ( commande 1) rester à la meme place, commande 2) remonter d'un dossier )
-> ".././" correspond également au dossier du dessus. ( commande 1) remonter d'un dossier, commande 2) rester à la même place )
-> en reprenant l'exemple du dessus, en considérant le fait que l'on soit dans le dossier commun : "./../includes/./././../pages/.././commun/" correspond à "./"
1) "." je reste à la même place ( je reste à la même place, dossier commun )
2) ".." je remonte d'un dossier ( je suis à la racine )
3) "includes" je vais dans le dossier include
4) "." je reste à la même place ( je reste à la même place, dossier includes )
5) "." je reste à la même place ( je reste à la même place, dossier includes )
6) "." je reste à la même place ( je reste à la même place, dossier includes )
7) ".." je remonte d'un dossier ( je suis à la racine )
8) "pages" je rentre dans le dossier pages
9) ".." je remonte d'un dossier ( je suis à la racine )
10) "." je reste dans le même dossier
11) "commun" je vais dans le dossier "commun"
Tout ça pour finalement revenir dans le dossier où on était au départ ^^
bonsoir,
merci pour vos reponse mais je n'ai pas tout saisi !
voici le script en entier
<?
$cpt=0;
$fp = fopen("../../banniere.txt","r");
while (!feof($fp))
{
$enr = fgets ($fp,4096);
$tab[$cpt]=$enr;
$cpt++;
}
srand((double)microtime()*1000000);
$nbr=rand(0,($cpt-1));
echo "$tab[$nbr]";
unset($cpt,$enr,$tab,$nbr);
?>
donc le seul fichier est banniere.txt
et c'est dans lui que se trouve l'emplacement et le lien de chaque banniere
banniere.txt sur la racine, le script dans un dossier, les images dans un dossier sur la racine
si le script est execute sur la racine il trouve le dossier banniere, si execute depuis un dossier il ne trouve plus les bannieres, comment sans changer l'adresse des bannieres le faire fonctionner ?
merci
valerie
bonjour,
je n'ai pas les connaissances en php pour créer ce que tu expliques fort bien d'ailleurs !
les seules choses que je peux changer ce sont des choses simples, je ne sais pas reprogrammer
mon probleme a peut etre une bidouille simple !
amities valerie
ensuite tu m'explique a nouveau si j'ai pas bien compris...
dans index.php (nom bidons... mais dans le dossier racine) tu veux afficher script1.php mais ca marche pas... alors copi ton code script, banniere, et index... on va pouvoir mieux t'aider...
__________________________ Votre Serviteur Rock_4_Ever
Je m'excuse des fautes faites.
Je suis présentement: sur msn.
N'oubliez pas non plus la mention Résolu
Venez nous rejoindre sur le chat de MoteurProg, par Java ou mIRC
bonsoir,
le script que j'ai donne plus haut je le place tel que sans nom dans un page php, et ca affiche la banniere definie dans banniere.txt
quand je change le script de place (plus dans une page php sur la racine) mais sur une page php dans un dossier il marche plus, dons j'ai change le chemin de banniere.txt et il marche,
par contre il trouve plus les bannieres dont le chemin est dans banniere.txt
je sais pas si j'ai ete clair !
amities