Probléme avec fopen

Résolu
lolito -  
lewis34 Messages postés 2557 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour a tous

je tiens a précisé que je suis peu expérimenté en programmation

et j'ai un souci avec la fonction fopen

voici mon programme :
# include <stdio.h>

main ()
{

FILE *fichier;

fichier = fopen("test","w");
if (fichier == NULL)
{
printf("impossible d'ouvrir \n")
exit(1)
}

printf("ouverture du fichier \n");
}

le souci est que quand j'execute le programme j'obtiens a chaque fois : "ouverture fichier" même si le fichier n'existe pas.

info utile ou pas ;-) je suis sous debian

si je suis pas assez clair hesitez pas a me poser des questions.
merci d'avance

5 réponses

lami20j Messages postés 21331 Date d'inscription   Statut Modérateur, Contributeur sécurité Dernière intervention   3 569
 
Salut,

r lecture seule, le fichier doit exister
w ecriture seule, le fichier est créer s'il n'existe pas
a écriture seule, si le fichier existe son contenu n'est pas modifié, s'il n'existe pas il est crée
r+ lecture+écriture, les lectures/écritures démarrent au début du fichier en écrasant les données presentes.
w+ lecture+écriture, si le fichier n'existe pas il est crée
a+ ajout+lecture, les lectures commencent au début de fichier, les écritures débutent en fin de fichier

Regarde man fopen pour plus de détails et précisions
0
remiei83 Messages postés 123 Date d'inscription   Statut Membre Dernière intervention   18
 
Il faut écrire "test.txt" dans les paramètres de fopen.
Et ce que te dit lami20j c'est que le fichier est créé dans le dossier de ton projet (le même que ton exécutable).

PS: Au passage, inclus aussi stdlib c'est plus sur ;)
0
lolito
 
merci pour vos lumières
j'ai donc mis un r+ pour pourvoir modifier de fichier
0
lolo59
 
moi aussi j'ai un probleme, sur ma page j'ai inseré un code
$fichier = fopen("ipvisit1.php", "r+");
// récupérer les valeurs
// pour des raisons de compréhension les variables ont des noms longs et explicites
$adresse_ip = $_SERVER['REMOTE_ADDR'];
$date_heure = date('d').".".date('m').".".date('Y')." ".date('H').":".date('i').":".date('s');
$navigateur = $_SERVER['HTTP_USER_AGENT'];
$langue = explode(",",$_SERVER['HTTP_ACCEPT_LANGUAGE']);
$langue = strtolower(substr(chop($langue[0]),0,2));
// si le visiteur entre l'adresse directement dans la barre d'adresse, la traçabilité est
// impossible, donc on vérifie d'abord si c'est possible
if (!empty($_SERVER['HTTP_REFERER'])) {
$derniere_page_visitee = $_SERVER['HTTP_REFERER'];
}

// Maintenant on affiche les valeurs
echo $adresse_ip."<br />";
echo $date_heure."<br />";

ensuite, j'ai créé un fichier php nommé ipvisit1.php et envoyé sur le serveur au meme endroit que ma page, pourtant ce fichier reste vide?

pouvez vous m'aider?
0

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

Posez votre question
lewis34 Messages postés 2557 Date d'inscription   Statut Membre Dernière intervention   352
 
si tu est sur un fichier distant (sur ton serveur) verifie que ca repertoire à les droits en ecriture chmod 0777
0