Maison  >  Questions et réponses  >  le corps du texte

Fichier TXT manquant dans le formulaire PHP. Une idée de ce qu'il doit contenir ?

J'ai ce code sur un formulaire de messagerie php que je n'ai utilisé que récemment.

//Open last-order.txt file for getting the order number
    $readFile = fopen("./order.txt", "r") or die("Unable to open file!");
    $orden= fread($readFile,filesize("./order.txt"));
    fclose($readFile);
    ++$orden;
    $writeFile= fopen("./order.txt", "w") or die("Unable to open file!");
    fwrite($writeFile, $orden);
    fclose($writeFile);
            
    if (!preg_match("~^(?:f|ht)tps?://~i", $website)) $website = "http://" . $website;
    
    $website = filter_var($website, FILTER_VALIDATE_URL);
    $email = filter_var(trim($_POST["email"]), FILTER_SANITIZE_EMAIL);
    $participantes = filter_var($_POST["participantes"], FILTER_SANITIZE_STRING, FILTER_FLAG_NO_ENCODE_QUOTES);

Il fait référence à un fichier TXT appelé order.txt qui lit le fichier et incrémente le numéro de un à chaque fois qu'il est lu. Malheureusement, lorsque le fournisseur d'hébergement m'a donné l'épaule froide, j'ai perdu ce fichier et je n'ai pas pu accéder au serveur ou à ses sauvegardes.

Voici le texte que j'ai mis dans le fichier TXT :

Orden: 8000

Je ne suis pas vraiment un codeur PHP compétent, j'ai donc essayé de le recréer ou de le faire fonctionner, mais en vain.

Voici l'erreur :

[03-Jan-2023 13:29:22 America/Mexico_City] PHP Warning:  Undefined variable $email_content in /home/guillerm/iefa.com.mx/rsvp/php/reserve.php on line 78
[03-Jan-2023 13:29:22 America/Mexico_City] PHP Warning:  Cannot modify header information - headers already sent by (output started at /home/guillerm/iefa.com.mx/rsvp/php/reserve.php:78) in /home/guillerm/iefa.com.mx/rsvp/php/reserve.php on line 149

Toute aide m'orientant dans la bonne direction serait grandement appréciée. Merci d'avoir consulté ce contenu.

P粉717595985P粉717595985173 Il y a quelques jours392

répondre à tous(1)je répondrai

  • P粉825079798

    P粉8250797982024-04-03 00:59:44

    c'est littéralement censé être un numéro de remplacement Orden: 8000 with just 8000.

    .

    BTW, ce code est thread-unsafe, les nombres peuvent entrer en conflit/dupliquer si vous exécutez plusieurs instances du code simultanément si vous devez être thread-safe, vous pouvez le faire

     ;
    $readFile = fopen("./order.txt", "c+b") or die("Unable to open file!");
    flock($readFile, LOCK_EX);
    $orden = (int)stream_get_contents($readFile);
    ++$orden;
    rewind($readFile);
    fwrite($readFile, (string) $orden);
    flock($readFile, LOCK_UN);
    fclose($readFile);

    répondre
    0
  • Annulerrépondre