Path relatif

OneHacker Messages postés 1447 Date d'inscription jeudi 2 novembre 2000 Statut Membre Dernière intervention 23 septembre 2007 - 18 mai 2007 à 22:30
coucou747 Messages postés 12303 Date d'inscription mardi 10 février 2004 Statut Membre Dernière intervention 30 juillet 2012 - 19 mai 2007 à 21:51
Bonjour, voici le code qui me pose problème :

<?
$host  = $_SERVER['HTTP_HOST'];
$dir = dirname($_SERVER['PHP_SELF']);
$fp = fopen("http://$host$dir/../Compteur.txt","w"); // 1.On ouvre le fichier en écriture
fseek($fp,0);                     // 4.On se place en début de fichier
fputs($fp,0);            // 5.On écrit dans le fichier le nouveau nb
fclose($fp);                      // 6.On ferme le fichier
print("Nombre de visiteur resetés");    // 7.On affiche le compteur à l'écran
?>

apparemment cela écrit dans le fichier Compteur.txt du même répertoire(qui n'existe pas) et non pas celui du répertoire parent. Je pense que ce sont la ligne 2 et 3 qui pose problème mais je ne vois pas en quoi.

Si vous pouvez m'aidez s'il vout plaît

Redman

16 réponses

neigedhiver Messages postés 2480 Date d'inscription jeudi 30 novembre 2006 Statut Membre Dernière intervention 14 janvier 2011 19
18 mai 2007 à 23:01
Salut,

fopen est plutôt à utiliser avec des fichiers qui sont sur le même système de fichier. Donc, pas trop en HTTP, surtout en écriture.

=> http://fr3.php.net/manual/fr/function.fopen.php
=> http://fr3.php.net/manual/fr/wrappers.http.php
0
OneHacker Messages postés 1447 Date d'inscription jeudi 2 novembre 2000 Statut Membre Dernière intervention 23 septembre 2007 2
18 mai 2007 à 23:06
Les liens que tu m'a donné ne parle pas de de path relatif avec fopen.

Redman
0
neigedhiver Messages postés 2480 Date d'inscription jeudi 30 novembre 2006 Statut Membre Dernière intervention 14 janvier 2011 19
19 mai 2007 à 08:36
"$fp = fopen("http://$host$dir/../Compteur.txt","w"); // 1.On ouvre le fichier en écriture"

=> ON NE PEUT PAS ECRIRE DANS UN FICHIER VIA HTTP !!
0
OneHacker Messages postés 1447 Date d'inscription jeudi 2 novembre 2000 Statut Membre Dernière intervention 23 septembre 2007 2
19 mai 2007 à 09:49
Ah oui et ça sert à quoi fopen ?

Redman
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
neigedhiver Messages postés 2480 Date d'inscription jeudi 30 novembre 2006 Statut Membre Dernière intervention 14 janvier 2011 19
19 mai 2007 à 10:20
RTFM => http://fr3.php.net/manual/fr/function.fopen.php

Ca sert à ouvrir un fichier en lecteur, en écriture ou les deux, sur un système local. Ca peut aussi servir à ouvrir un fichier en lecture en HTTP, HTTPS, FTP ou autre (pour ça => http://fr3.php.net/manual/fr/wrappers.http.php )
Mais en HTTP, on ne peut pas ouvrir de fichier en écriture... Imagine un peu quelqu'un qui ouvre un de tes fichiers depuis son site web et qui écrit dessus sans te demander...

Bref => LIS CETTE P****N DE DOC !
0
coucou747 Messages postés 12303 Date d'inscription mardi 10 février 2004 Statut Membre Dernière intervention 30 juillet 2012 44
19 mai 2007 à 10:25
Salut,

par http, on a les methodes GET et POST, on ne peut pas ecrire comme ca sur un fichier, t'imagines la faille autrement....

fopen = file open.... enfin le nom est clair...

In a dream, I saw me, drop dead... U was there, U cried... It was just a dream, if I die, U won't cry, maybe, U'll be happy

Mon site (articles sur la programmation et programmes)
0
OneHacker Messages postés 1447 Date d'inscription jeudi 2 novembre 2000 Statut Membre Dernière intervention 23 septembre 2007 2
19 mai 2007 à 19:17
On peut pas me hacker puisque mes dossier ne sont accessible par le FTP avec login et code ou par mon site. Et toutes les entrées(champ et tout) je les transformes en texte pur donc meme si on y glisse du PHP on risque pas de me hacker.

Redman
0
neigedhiver Messages postés 2480 Date d'inscription jeudi 30 novembre 2006 Statut Membre Dernière intervention 14 janvier 2011 19
19 mai 2007 à 19:35
Ce que je te propose, c'est d'investir quelques euros dans des bouquins, parce que là, tu ne comprends décidément rien et tu mélanges tout. Procure toi des bouquins sur Apache et PHP, et lis-les bien depuis le début, les bases te manquent.
0
OneHacker Messages postés 1447 Date d'inscription jeudi 2 novembre 2000 Statut Membre Dernière intervention 23 septembre 2007 2
19 mai 2007 à 19:36
Je comprends, je ne mélange que dalle et t'inquiète pas j'ai débuté hier et en une nuit j'ai déjà fait au taquet de progrès.

Redman
0
coucou747 Messages postés 12303 Date d'inscription mardi 10 février 2004 Statut Membre Dernière intervention 30 juillet 2012 44
19 mai 2007 à 19:44
Salut,

moi le php ca fait trois ans...

sur ce, je te conseille aussi d'investir...

Mais serieusement, regarde ce qu'on t'a dit plutot que de te vexer... on ne dit pas ca pour te faire chier mais pour t'aider... http c'est un protocol pas un chemin reseau... tu peux lire une ressource, poster, mais en aucun cas ecrire... ftp par contre, c'est un protocol fait pour pouvoir ecrire...

In a dream, I saw me, drop dead... U was there, U cried... It was just a dream, if I die, U won't cry, maybe, U'll be happy

Mon site (articles sur la programmation et programmes)
0
OneHacker Messages postés 1447 Date d'inscription jeudi 2 novembre 2000 Statut Membre Dernière intervention 23 septembre 2007 2
19 mai 2007 à 19:50
Je me vexe pas et tu te trompes car j'écris bien sur mes fichiers juste avec le php.

Redman
0
coucou747 Messages postés 12303 Date d'inscription mardi 10 février 2004 Statut Membre Dernière intervention 30 juillet 2012 44
19 mai 2007 à 20:00
Salut,

j'abandonne

In a dream, I saw me, drop dead... U was there, U cried... It was just a dream, if I die, U won't cry, maybe, U'll be happy

Mon site (articles sur la programmation et programmes)
0
OneHacker Messages postés 1447 Date d'inscription jeudi 2 novembre 2000 Statut Membre Dernière intervention 23 septembre 2007 2
19 mai 2007 à 20:01
Ok, comme tu veux ^^

Redman
0
neigedhiver Messages postés 2480 Date d'inscription jeudi 30 novembre 2006 Statut Membre Dernière intervention 14 janvier 2011 19
19 mai 2007 à 21:09
Ecoute OneHacker...
PHP, je joue avec depuis près de 8 ans. Sans être un Grand Maître, il y a quand même certaines notions que j'ai. Des notions qu'on a tenté de t'expliquer. Mais tu ne fais aucun effort.
On t'explique qu'avec fopen, tu ne PEUX PAS écrire en HTTP. Maintenant si tu persistes à dire le contraire, libre à toi. Je n'essaie pas de te convaincre que j'ai raison, je t'explique ce que je sais, par expérience.

Alors fais comme moi quand j'ai débuté : j'ai acheté un bouquin sur PHP, un autre sur HTML et un sur Javascript. Et je me suis démerdé comme un grand.
Ensuite, j'ai acheté un bouquin sur Apache pour parfaire mes connaissance, un autre sur MySQL pour avoir toujours de la doc sous la main.

Les forums ne sont pas là pour t'apprendre à développer : ils sont là pour te donner un coup de main quand tu galères un peu. Mais il faut encore comprendre de quoi tu parles. Les bases, tu les trouveras dans les livres. Je sais, les livres sont chers, mais p****n, ce qu'ils sont pratiques !

Alors n'hésite pas, ce sera un bon investissement.
Maintenant, je ne suis plus ce sujet, je ne viendrai même pas lire si tu réponds.

Bonne continuation et bon courage.
0
OneHacker Messages postés 1447 Date d'inscription jeudi 2 novembre 2000 Statut Membre Dernière intervention 23 septembre 2007 2
19 mai 2007 à 21:13
Bah je vous ai passé le code tout au début. Après ce que je veux faire c'est utiliser un path relatif.

Redman
0
coucou747 Messages postés 12303 Date d'inscription mardi 10 février 2004 Statut Membre Dernière intervention 30 juillet 2012 44
19 mai 2007 à 21:51
Salut,

<?
$host  = $_SERVER['HTTP_HOST'];
$dir = dirname($_SERVER['PHP_SELF']);
$fp = fopen("$dir/../Compteur.txt","w"); // 1.On ouvre le fichier en écriture
fseek($fp,0);                     // 4.On se place en début de fichier
fputs($fp,0);            // 5.On écrit dans le fichier le nouveau nb
fclose($fp);                      // 6.On ferme le fichier
print("Nombre de visiteur resetés");    // 7.On affiche le compteur à l'écran
?>

pour ne pas depoussierer ton code... tu ne fais aucun effor moi non plus...

In a dream, I saw me, drop dead... U was there, U cried... It was just a dream, if I die, U won't cry, maybe, U'll be happy

Mon site (articles sur la programmation et programmes)
0
Rejoignez-nous