Problème avec gestion de fichier PHP

Snappy -  
 Snappy -
Bonjour, je suis présentement en train d'expérimenter un peu en PHP, plus précisément avec la gestion des fichiers textes. Je suis pas tout à fait sûr du code que j'ai fait.

Alors voilà. J'ai un formulaire qui poste 3 informations, soit un nom, un prénom et une date.

Les variables suivantes vont chercher par POST les informations du formulaire.

$nom = $_POST['textname'];
$prenom = $_POST['textfirstname'];
$birth = $_POST['textbirth'];

Ensuite, j'ai une fonction qui valide la présence du fichier texte servant à l'écriture des info. Seulement, voilà, je ne suis pas certain si cela semble correct, car à l'exécution du script php, j'obtiens une erreur de condition qui interrompt le processus. Peut-être est-ce à cause de la façon dont les paramètres sont déclarés, je l'ignore.

function check($nom, $prenom, $birth);
{
$nomFichier = "inscription.txt";
$nomInscript = $nom;
$prenomInscript = $prenom;
$birthInscript = $birth;

if (file_exists($nomFichier) && is_writable($nomFichier))
{
$fp = fopen($nomFichier, "a");
fputs($fp, $nomInscript . ";\r\n");
fclose($fp);
return true;
}
return false;
}

En bref, voyez-vous ce qui cloche? Moi non.

1 réponse

  1. __construct
     
    Bonsoir,
    Teste comme ceci :
    function check($nom, $prenom, $birth) {
    	$nomFichier = "inscription.txt";
    
    	if(file_exists($nomFichier) && is_writable($nomFichier)) {
    		$fp = fopen($nomFichier, "a");
    		fputs($fp, $nom .";\r\n");
    		fclose($fp);
    		return true;
    	} else {
    		return false;
    	}
    }
    1
    1. Snappy
       
      Génial, merci __construct, l'erreur est partie! :)

      Cependant, il semble encore y avoir un problème. Le code marche, mais aucune information n'est inscrite dans le fichier texte.

      <?php
      $nom = $_POST['textname'];
      $prenom = $_POST['textfirstname'];
      $birth = $_POST['textbirth'];


      function check($nom, $prenom, $birth)
      {
      $nomFichier = "inscription.txt";
      $nomInscript = $nom;
      $prenomInscript = $prenom;
      $birthInscript = $birth;

      if(file_exists($nomFichier) && is_writable($nomFichier))
      {
      $fp = fopen($nomFichier, "a");
      fputs($fp, $nomInscript . "\r\n");
      fclose($fp);
      return true;
      echo "réussi";
      }
      else{
      return false;
      echo "erreur";
      }


      }


      ?>
      <a href="#">retour</a>

      Il semblerait que le if et le else ne tournent même pas. Sinon j'aurais eu un message de succès ou d'erreur...
      0