[PHP] Créer un fichier inexistant sur serveur

Résolu/Fermé
Nicolacoste Messages postés 17 Date d'inscription mercredi 17 juin 2009 Statut Membre Dernière intervention 1 octobre 2010 - 13 oct. 2009 à 14:53
 AEHP - 19 déc. 2013 à 11:21
Bonjour,

Je sais manipuler un fichier .txt ou autre extension via php ,
par exemple , lire , écrire , ajouter ect..

J'aimerai savoir si il est possible de générer un fichier inexistant ,
c'est a dire le code php vas fabriquer "exemple.txt" sur le serveur , alors que "exemple.txt" n'existe pas.

Si je trouve un code qui permet de faire cela je vais le modifier et faire en sorte que le nom du fichier soi aussi générer a partir d'un code aléatoire.

Je n'ai trouvé aucune réponse qui correspond exactement a ce que je voudrais faire sur les forums ect..
Merci de votre aide.
A voir également:

8 réponses

Profil bloqué
27 nov. 2012 à 14:34
$file = fopen('test.txt', 'w+');

Il t'ouvre le fichier en lecture et écriture.
Le "w+" créer le fichier si il n'existe pas.
14
Nicolacoste Messages postés 17 Date d'inscription mercredi 17 juin 2009 Statut Membre Dernière intervention 1 octobre 2010 9
13 oct. 2009 à 15:58
<?php
if (!isset($_POST['form'])) {
echo "<form action=\"create.php\" method=\"POST\">
Nom du fichier : <input type=\"text\" name=\"filename\" value=\"exemple.txt\"><br><br>
Contenu :<br><textarea name=\"contenu\" cols=70 rows=20>Contenu du fichier</textarea><br><br>
<input type=\"hidden\" name=\"form\" value=\"1\">
<input type=\"submit\" value=\"Créer\">";
} else {
// Création du fichier
$fichier = fopen($_POST['filename'],"w");
// Vérification de l'écriture
if (fwrite($fichier,$_POST['contenu'])) {
echo "Le fichier à été créé avec succès";
} else {
// Erreur
echo "Impossible de créer le fichier";
}
fclose($fichier);
}
?>

Si en fait ce code par exemple il marche, sauf que le fichier mettais un certain temp avant d'apparaitre .
Donc c'est parfait , autant pour moi.
Merci bcp Nabla's
5
I use this option:

$fichier = fopen($_POST['filename'],"a");

(Y)
0
Nabla's Messages postés 18203 Date d'inscription mercredi 4 juin 2008 Statut Contributeur Dernière intervention 28 avril 2014 3 192
13 oct. 2009 à 15:17
https://www.php.net/manual/fr/function.fopen.php

les les modes w, a , x avec ou sans plus créent le fichier
3
Nicolacoste Messages postés 17 Date d'inscription mercredi 17 juin 2009 Statut Membre Dernière intervention 1 octobre 2010 9
13 oct. 2009 à 15:24
Je connais les fonctions....
Mais visiblement je n'arrive pas a me faire comprendre
je voudrais fabriquer ce fichier qui n'existe pas sur le serveur.

monficher.txt n'existe pas , je voudrais que le code le crée..

Non pas l'interieur du fichier mais le fichier même !
solution ?
2

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

Posez votre question
Nabla's Messages postés 18203 Date d'inscription mercredi 4 juin 2008 Statut Contributeur Dernière intervention 28 avril 2014 3 192
13 oct. 2009 à 15:28
oui, tu ouvres le fichier avec un des 6 modes que je t'ai donné, si il est pas existant, il est créé, et ensuite tu le ferme, sans faire aucune opération dessus .... non ?

y a peut être d'autres solutions, mais en tout cas celle ci peut te dépanner
1
Nicolacoste Messages postés 17 Date d'inscription mercredi 17 juin 2009 Statut Membre Dernière intervention 1 octobre 2010 9
13 oct. 2009 à 15:34
Non c'est bien la le problème , le fichier ne ce crée pas si il n'existe pas..
tu es sur ??
Peut tu me donner la syntaxe stp.

<?php
$filename = "myfile.txt"; //ligne que j'ai rajoutée
//first, obtain the data initially present in the text file
$ini_handle = fopen($filename, "r");
$ini_contents = fread($ini_handle, filesize($filename));
fclose($ini_handle);
//done obtaining initially present data

//write new data to the file, along with the old data
$handle = fopen($filename, "w+");
$writestring = "text to write to file\n" . $ini_contents;
if (fwrite($handle, $writestring) === false) {
echo "Cannot write to text file. <br />";
}
fclose($handle);
?>

J'ai ce code , sa ne marche pas non plu
1
Nabla's Messages postés 18203 Date d'inscription mercredi 4 juin 2008 Statut Contributeur Dernière intervention 28 avril 2014 3 192
13 oct. 2009 à 15:51
je peux pas tester là, je pensais que ca marcherait. dsl
1
Nabla's Messages postés 18203 Date d'inscription mercredi 4 juin 2008 Statut Contributeur Dernière intervention 28 avril 2014 3 192
13 oct. 2009 à 15:59
ok . Content d'avoir pu t'aider
1