[PHP] Appeler un fichier
15 messages • Page 1 sur 1
Consultez la formation au référencement naturel Google de WebRankInfo / Ranking Metrics
[PHP] Appeler un fichier
Bonjour,
Je désespère d'avoir une nouvelle de mon hébergeur ... pour savoir si il a modifié des paramètres récemment sur ma machine. Avant, tout marché bien.
Donc, je viens vers vous pour vos avis d'expert.
J'ai un fichier qui appelle un fichier à télécharger. Il lance le téléchargement et implémente de +1 un fichier texte (compteur).
Je suis pas un pro en php, et je n'arrive pas à bidouiller ma fonction et surtout à comprendre le message d'erreur.
Voici mon fichier download.php3
Et voici l'erreur que me retourne le serveur.
Le fichier texte est belle et bien présent sur le serveur.
Merci d'avance pour votre aide.
Je désespère d'avoir une nouvelle de mon hébergeur ... pour savoir si il a modifié des paramètres récemment sur ma machine. Avant, tout marché bien.
Donc, je viens vers vous pour vos avis d'expert.
J'ai un fichier qui appelle un fichier à télécharger. Il lance le téléchargement et implémente de +1 un fichier texte (compteur).
Je suis pas un pro en php, et je n'arrive pas à bidouiller ma fonction et surtout à comprendre le message d'erreur.
Voici mon fichier download.php3
- Code: Tout sélectionner
<?
$tel_file = "$file".".txt";
// --------------------------------
$fp = fopen("$tel_file","r+");
$nbtel = fgets($fp,255);
$nbtel++;
fseek($fp,0);
fputs($fp,$nbtel);
fclose($fp);
// --------------------------------
header("Location: $file".".zip"); //On redirige vers le fichier à télécharger (toujours au format ZIP!)
?>
Et voici l'erreur que me retourne le serveur.
- Code: Tout sélectionner
Warning: fopen(.txt) [function.fopen]: failed to open stream: No such file or directory in /home/paysage1/domains/paysage-en-herbe.com/public_html/telechargements/textures/download.php3 on line 4
Warning: fgets(): supplied argument is not a valid stream resource in /home/paysage1/domains/paysage-en-herbe.com/public_html/telechargements/textures/download.php3 on line 5
Warning: fseek(): supplied argument is not a valid stream resource in /home/paysage1/domains/paysage-en-herbe.com/public_html/telechargements/textures/download.php3 on line 7
Warning: fputs(): supplied argument is not a valid stream resource in /home/paysage1/domains/paysage-en-herbe.com/public_html/telechargements/textures/download.php3 on line 8
Warning: fclose(): supplied argument is not a valid stream resource in /home/paysage1/domains/paysage-en-herbe.com/public_html/telechargements/textures/download.php3 on line 9
Warning: Cannot modify header information - headers already sent by (output started at /home/paysage1/domains/paysage-en-herbe.com/public_html/telechargements/textures/download.php3:4) in /home/paysage1/domains/paysage-en-herbe.com/public_html/telechargements/textures/download.php3 on line 11
Le fichier texte est belle et bien présent sur le serveur.
Merci d'avance pour votre aide.
- bozoleclown
- WRInaute passionné

- Messages: 893
- Inscription: Jeu Nov 24, 2005 19:08
Comment est initialisé la valeur $tel ?
peux tu faire un
echo $tel;
echo ";".$tel_file;
au début de ton script pour afficher la valeur de ces 2 variables
car à mon sens, ici la valeur $tel n'est pas initialisé...
c'est une valeur que tu récupères via l'url via un formulaire ?
peux tu faire un
echo $tel;
echo ";".$tel_file;
au début de ton script pour afficher la valeur de ces 2 variables
car à mon sens, ici la valeur $tel n'est pas initialisé...
c'est une valeur que tu récupères via l'url via un formulaire ?
bozoleclown a écrit:Comment est initialisé la valeur $tel ?
c'est une valeur que tu récupères via l'url via un formulaire ?
Oui, la valeur est via mon URL.
Exemple : *http://...../download.php3?file=nom-du-fichier
e-kiwi a écrit:Warning: fopen(.txt)
ton fichier n'a pas de nom
Ben si.
Dans le fichier php, j'ai : $tel_file = "$file".".txt";
Non ? c'est pas ca le nom du fichier. Il le récupère via l'URL.
Le nom du fichier à télécharger et le nom du fichier texte doivent porter le même nom.
- bozoleclown
- WRInaute passionné

- Messages: 893
- Inscription: Jeu Nov 24, 2005 19:08
remplace $file par $_GET[file]
-

UsagiYojimbo - WRInaute accro

- Messages: 5072
- Inscription: Mer Nov 23, 2005 10:38
bozoleclown a écrit:remplace $file par $_GET[file]
Et teste-le au préalable, ce sera déjà plus propre.
- Code: Tout sélectionner
if (isset($_GET['file']))
{
$file = $_GET['file'];
//ici ton code qui nécessite d'avoir un fichier en paramètre
}
UsagiYojimbo a écrit:Et teste-le au préalable, ce sera déjà plus propre.
- Code: Tout sélectionner
if (isset($_GET['file']))
{
$file = $_GET['file'];
//ici ton code qui nécessite d'avoir un fichier en paramètre
}
roooo ... ca marche !!!!
T'es un chef UsagiYojimbo
Mon code est devenu
- Code: Tout sélectionner
<?
if (isset($_GET['file']))
{
$file = $_GET['file'];
}
$tel_file = "$file".".txt";
// --------------------------------
$fp = fopen("$tel_file","r+");
$nbtel = fgets($fp,255);
$nbtel++;
fseek($fp,0);
fputs($fp,$nbtel);
fclose($fp);
// --------------------------------
header("Location: $file".".zip"); //On redirige vers le fichier à télécharger (toujours au format ZIP!)
?>
e-kiwi a écrit:ah, ton hébergeur a fait une modif oui, il a sécurisé ton serveur Smile tu ne peux plus appeler une variable par $sonnom si c est une variable get, post, cookoie, ou session maintenant, tu dois utiliser les bonnes variables
Et effectivement toi aussi tu as raison.
C'est la source du probleme ... avant le server était en registerGlobal ON
Et forcement pour plus sécurité il on mis en off.
Vous êtes tous des chefs ... merci de votre aide et de votre dévouement à tous les 3.
- bozoleclown
- WRInaute passionné

- Messages: 893
- Inscription: Jeu Nov 24, 2005 19:08
En fait dans ton code, le if ne sert à rien
car s'il manque le paramètre dans l'url, le code va planter comme avant
donc soit tu enlèves le if comme tu avais avant (le $_GET en plus)
soit tu fais comme ça pour être encore plus propre
car s'il manque le paramètre dans l'url, le code va planter comme avant
donc soit tu enlèves le if comme tu avais avant (le $_GET en plus)
soit tu fais comme ça pour être encore plus propre
- Code: Tout sélectionner
<?
if (isset($_GET['file']))
{
$file = $_GET['file'];
$tel_file = "$file".".txt";
// --------------------------------
$fp = fopen("$tel_file","r+");
$nbtel = fgets($fp,255);
$nbtel++;
fseek($fp,0);
fputs($fp,$nbtel);
fclose($fp);
// --------------------------------
header("Location: $file".".zip"); //On redirige vers le fichier à télécharger (toujours au format ZIP!)
}
else{
echo "il manque le paramètre file";
}
?>
Re: [PHP] Appeler un fichier
Bonjour,
Je dépoussière un peu mon topic puisque une fois de plus mon hébergeur m'a changé de machine et que je n'ai aucune réponse de sa part sur les changements qu'il aurait pu faire sur celle-ci.
Mon script précédemment cité et que je recopie ci-dessous, ne fonctionne à nouveau plus.
Lorsque je clique sur le lien pour lancer le téléchargement le fichier, il m'affiche le contenu de mon fichier PHP. Le téléchargement n'est donc pas lancé.
Avez vous une solution ?
Merci d'avance.
Je dépoussière un peu mon topic puisque une fois de plus mon hébergeur m'a changé de machine et que je n'ai aucune réponse de sa part sur les changements qu'il aurait pu faire sur celle-ci.
Mon script précédemment cité et que je recopie ci-dessous, ne fonctionne à nouveau plus.
Lorsque je clique sur le lien pour lancer le téléchargement le fichier, il m'affiche le contenu de mon fichier PHP. Le téléchargement n'est donc pas lancé.
- Code: Tout sélectionner
<?
if (isset($_GET['file']))
{
$file = $_GET['file'];
$tel_file = "$file".".txt";
$fp = fopen("$tel_file","r+");
$nbtel = fgets($fp,255);
$nbtel++;
fseek($fp,0);
fputs($fp,$nbtel);
fclose($fp);
header("Location: $file".".zip");
}
else{
echo "Desole, une erreur est survenue. Merci de nous contacter pour nous informer de ce probleme, que nous corrigerons dans les meilleurs delais.";
}
?>
Avez vous une solution ?
Merci d'avance.
- bozoleclown
- WRInaute passionné

- Messages: 893
- Inscription: Jeu Nov 24, 2005 19:08
Re: [PHP] Appeler un fichier
quelle est l'extension du fichier ?
toujours download.php3 ?
peut-etre que ton hébergeur ne supporte plus les extensions .php3 ?
du coup essaie de passer en .php
toujours download.php3 ?
peut-etre que ton hébergeur ne supporte plus les extensions .php3 ?
du coup essaie de passer en .php
Re: [PHP] Appeler un fichier
bozoleclown a écrit:peut-etre que ton hébergeur ne supporte plus les extensions .php3 ?
du coup essaie de passer en .php
lol ... c'est ca.
Je suis tout honteux de ne pas y avoir pensé.
Merci beaucoup.
15 messages • Page 1 sur 1
Formation recommandée sur ce thème :
Formation Référencement naturel Google : apprenez une méthode efficace pour optimiser à fond le référencement naturel dans Google de façon durable... Formation animée par Olivier Duffez et Fabien Facériès, experts en référencement naturel.
Tous les détails sur le site Ranking Metrics : programme, prix, dates et lieux, inscription en ligne.
Lectures recommandées sur ce thème :
- Article sur le fichier .htaccess
- Déclarer son fichier sitemap dans le fichier robots.txt
- Googlebot analyse certains codes JavaScript
- Sortie de GoogleStats v2.01
- Suite de l'article sur le fichier .htaccess : l'URL rewriting
- API Google Talk (Libjingle) : Google concurrence Skype
- Sitemaps : protocole commun pour Google, Yahoo et Live Search
- Comment gérer simplement les sitemaps de plusieurs sites au même endroit
- Exalead rejoint le protocole Sitemaps.org
- Vocabulaire du référencement : noms de domaine et URL
Qui est en ligne
Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités



le forum