2016-11-22 2 views
0

Я сделал простой код на PHP, где у вас есть 3 текстовых поля, в которых вы помещаете свой адрес имени и место проживания, и оно будет сохранено в файле с именем name.txt. Все работает отлично, но я хочу сохранить его в формате ниже и не так, как это (Имя Adrress Livingplace):PHP Ввод в файл

Name 
Address 
Living place 

Name 
etc. 

Я попытался, но/п в fputs, но не работал. Вот мой код:

<!DOCTYPE html> 
<html lang="nl"> 
    <head> 
    <meta charset="utf-8"> 
     <?php 
      if (!empty($_GET)) {   // ----- 
      $naamnieuw = $_GET["naam"]; // Naam word een variable. 
      $adres = $_GET["adres"]; 
      $woon = $_GET["woon"]; 
      if (file_exists("naam.txt")) {  // Checkt of naam.txt bestaat 
      $fp = fopen("naam.txt", "r+"); // Opent naam.txt om erin te kunne schrijven 
      // $naam = fgets($fp);   // De variable naam leest de naam op uit het bestand naam.txt de variable fp verwijst weer naar fopen naam.txt en dat opent het weer zodat je ernaar kan schrijven. 
      fclose($fp);    // Sluit het bestand 
      $fp = fopen("naam.txt", "a"); // Hier word variable fp veranderd in het openen van naam.txt maar het maakt het bestand ook als het niet bestaat. 
      // echo "Jouw naam is dus $naamnieuw"; // Zegt de naam van de textbox. 
      // if ($naamnieuw != $naam) {   // Als de $naam in het bestand niet gelijk is aan de naam nieuw in het textbox dan zegt die dit. 
      // echo "<br>maar de vorige keer heette je nog $naam"; 
      // } 
      fputs($fp, $naamnieuw."\n");  // Schrijft de niewenaam naar het bestand 
      fputs($fp, $adres."\n"); 
      fputs($fp, $woon."\n"."\n"); 
      fclose($fp);     // Sluit het bestand 
      // rewind($fp); 
      }      
      // else {      
      // $fp = fopen("naam.txt", "w");  // Variable fp word nu veranderd in w dat zorgt ervoor dat je er naar kunt schrijven en als er al iets in staat dat het overwirte wordt. 
      // $naamnieuw = $_GET["naam"];  // De naam in het textbox word een variable. 
      // fputs($fp, $naamnieuw);   // Schrijft de naam naar het bestand. 
      // fputs($fp, $adres); 
      // fputs($fp, $woon); 
      // fclose($fp);     // Sluit het bestand 
      // }      
      } 
     ?> 
    </head> 
    <body> 
     <form name="naamform" method="get" action="<?php echo $_SERVER["PHP_SELF"]?>"> 
       Naam  <input type="text" name="naam"><br> 
       Adres  <input type="text" name="adres"><br> 
       Woonplaats <input type="text" name="woon"> 
       <br> 
       <br> 
      <input type="submit" name="submit" value="opslaan"> 
     </form> 
    </body> 
</html> 
+0

для Windows использует "\ г \ п" для обозначения разделители строк. – Pete

ответ

1
  fputs($fp, $naamnieuw."\r\n");   
      fputs($fp, $adres."\r\n"); 
      fputs($fp, $woon."\r\n"."\r\n"); 

Это должно сделать трюк.

Я переформатирован немного кода для читаемости:

  if(!empty($_GET)) { 

       //Declareer variabeles 
       $naamnieuw = $_GET["naam"]; 
       $adres = $_GET["adres"]; 
       $woon = $_GET["woon"]; 

       if(file_exists("naam.txt")) { 
        $fp = fopen("naam.txt", "a"); 
        fputs($fp, $naamnieuw."\r\n");  
        fputs($fp, $adres."\r\n"); 
        fputs($fp, $woon."\r\n"."\r\n"); 
        fclose($fp); 
       } else { 
        $fp = fopen("naam.txt", "w");  
        $naamnieuw = $_GET["naam"];  
        fputs($fp, $naamnieuw."\r\n");  
        fputs($fp, $adres."\r\n"); 
        fputs($fp, $woon."\r\n"."\r\n"); 
        fclose($fp); 
       } 
      } 
+0

Да это сработало спасибо :) – Jelles

1

"\ п" в:

fputs($fp, $naamnieuw."\n"); 

будет использоваться в системах Linux.

Для Windows вы можете использовать «\ r \ n».

Если вы не хотите, чтобы заботиться о нем, вы должны использовать:

fputs($fp, $naamnieuw . PHP_EOL); 

Это PHP символ конца строки:

http://php.net/manual/en/reserved.constants.php

Смежные вопросы