Ecrire une donnée dans un fichier texte

Résolu/Fermé
barnabe0057 - 28 déc. 2018 à 15:15
 barnabe0057 - 28 déc. 2018 à 15:36
Bonjour,

Je suis débutant en PHP, je souhaiterais écrire le contenu d'une variable (une adresse ip) dans un fichier texte.

Voilà le code :

<?php

// on vérifie la validité de l'adresse

$ip = $_POST['ip'];

if(empty($ip))
{
   header("Location: test.php");
   exit;
}

if(strlen($ip) < 7 OR strlen($ip) > 15)
{
   header("Location: test.php");
   exit;
}

echo 'bravo !!!'

$file = fopen("ip_address.txt","w");

fputs($monfichier,"$ip");

fclose($file);

?>


J'ai mis les permissions 777 sur le fichier texte, il se trouve dans le même dossier que le script PHP.

Si je supprime les lignes après le echo, le script fonctionne et m'affiche le bravo.

Qu'est-ce qui cloche dans les 3 dernières lignes ?

Merci d'avance.

Configuration: Linux / Firefox 64.0

1 réponse

diablo13800 Messages postés 2852 Date d'inscription jeudi 2 juillet 2015 Statut Membre Dernière intervention 24 novembre 2022 1 815
28 déc. 2018 à 15:29
Bonjour,

Deux points qui me semble bloquant:

L'oublie d'un ";" à la ligne 19
fputs mal utilisé.

essayer comme ceci:
<?php

// on vérifie la validité de l'adresse

$ip = $_POST['ip'];

if(empty($ip))
{
   header("Location: test.php");
   exit;
}

if(strlen($ip) < 7 OR strlen($ip) > 15)
{
   header("Location: test.php");
   exit;
}

echo 'bravo !!!';

$file = fopen("ip_address.txt","w");

fputs($file,$ip);

fclose($file);

?>

0
Bien vu pour la ligne 19, c'est effectivement cet oubli qui empêchait la suite de fonctionner correctement.

Je te remercie pour ta réactivité, bonne journée et bonnes fêtes !

A bientôt peut-être.
0