Page 1 sur 1

chmod

Posté : 03 juil. 2006, 15:14
par gerL
salut,
voici mon code pour créer un fichier txt sur le serveur.
mon fichier n'est pas créé sur ce serveur, alors que sur un autre ca marche bien.(j'ai bien regardé les droits des dossiers et ca devrait être bon de ce côté la) Vu mon niveau en php, je sèche complétement ...
<?
$msg = str_replace ("\n"," ", $_GET['message']);

$msg = stripslashes ($msg);

if ($msg != ""){
$fp = fopen($_GET['nom'] , "w+");

$fw = fwrite($fp, "$msg\n");
chmod($_GET['nom'] , 0644);
fclose($fp);

chmod($_GET['nom'], 0644);

} else { echo"Une des variables n'est pas remplie" 
}
?>

Posté : 03 juil. 2006, 16:12
par Ryle
Il te manque un point-virgule après le echo... je doute que ce code là fonctionne sur ton autre serveur [-X

Et puis à mon avis tu as un chmod($_GET['nom'] , 0644) inutile... :)

chmod (suite)

Posté : 03 juil. 2006, 18:03
par gerL
désolé au lieu de répondre j'ai cliqué sur nouveau.
On reprend donc ici.

J'en suis arrivé la avec mon code :
<?php 
$msg = str_replace ("\n"," ", $_GET['message']); 

$msg = stripslashes ($msg); 

if ($msg != "") 
{ 
$fichier = $_GET['nom']; 
chmod ($fichier,0644); // Lecture et écriture pour le propriétaire, lecture pour les autres 
$fp = fopen($fichier, "w"); 
fputs($fp, $msg."\n"); 
fclose($fp); 
} 
else 
{ 
echo"Une des variables n'est pas remplie"; 
} 
?>

Mes variables sont bien présentes mais le fichier n'est toujours pas créé. N'étant pas très doué avec le php je vais finir par manger mon chapeau.

Posté : 03 juil. 2006, 19:11
par Dgse
Bonjour

Il y a un message d'erreur ? si oui lequels ?

La variable est t'elle declaré voir aussi ton hebergeur quel version de PHP
si < 4.3 met a la place de $_GET['nom'] > $HTTP_GET_VARS['nom']
(si si il y en a encore )
ajoute une extension a ton fichier,
$fichier = $_GET['nom'].".txt"; 
si tu as juste l'extension sur ton serveur c'est que la variable n'est pas recupérée.

@+ Dgse

PS : donne nous les resultats des tests, sur le mien cela fonctionne

chmod

Posté : 03 juil. 2006, 20:34
par gerd
Je viens de tester ca ne passe toujours pas.
Normalement, je pase l'extension dans la variable alors je devrais pas avoir besoin de rajouter l'extension.
J'ai d'autres variables du type $_GET['nom'] et ca passe très bien.
Je n'ai pas de message d'erreur tout se passe normalement sauf que le fichier n'est pas créé.
Par contre le serveur a un accès sécurisé avec login et pass pour y accéder, le probème vient peut être de la???

chmod

Posté : 04 juil. 2006, 16:01
par gerL
Voila ou j'en suis rendu, ce script fonctionne sur un premier hebergeur mais pas sur un autre (php 4.4) ?

Je n'ai aucun message d'erreur. Echo me retourne bien la variable $nom mais le fichier n'est pas créé sur le seveur ?

merci de votre aide
<?php 
$msg = str_replace ("\n"," ", $_GET['message']); 

$msg = stripslashes ($msg); 

if ($msg != "") 
{ 
$fichier = $_GET['nom'].".txt";
$fp = fopen($fichier, "w+"); 
fputs($fp, $msg. "\n"); 
fclose($fp); 
chmod($fichier,0644); // Lecture et écriture pour le propriétaire, lecture pour les autres 
echo"Fichier = ".$fichier; 
} 
else 
{ 
echo"Une des variables n'est pas remplie"; 
} 
?> 

Posté : 04 juil. 2006, 19:25
par Invité
Bonjour
Par contre le serveur a un accès sécurisé avec login et pass pour y accéder, le probème vient peut être de la???
Tres possible

@+