2016-09-30 8 views
0

Die Daten aus dem Formular versuchen, eine andere PHP-Datei mit der Datei functions.php zu beschriften. Es funktioniert gut, außer dass es nur Daten aus dem Formular abruft, aber es nicht Daten abrufen/registrieren, die ich eingeben möchte, wie HTML-Tags, die erforderlich sind, um die Website ordnungsgemäß zu betreiben. Ich wäre dankbar für einen Rat.Schreiben von Daten in die PHP-Datei

/** php function file dir: ‘/themes/dir/securedir/subdir/functions.php’ */ 
/** php form file dir: ‘/themes/dir/formsdir/subdir/forms.php’ */ 
function updateVesti() { 
    If (isset($_GET['pn-path'])){ 
     /** path: ‘/themes/dir/pagedir/subdir/phpfile.php’ */ 
     $pn_path = $_REQUEST['pn-path']; 
     $inputs = !empty($_REQUEST['novosti']) ? $_REQUEST['novosti'] : array(); 
     if(!$fhandle = fopen($pn_path,"w")){ 
      header("Location: ../error.php?err=updateVesti() fhandle razlicno od fopen"); 
      exit(); 
     } 
     if (is_writable($pn_path)) { 
      foreach($inputs as $value) { 
       $val1 = '<li class="news-item"><a href="#">'; 
       $val2 = '</a></li></br>'; 
       $contents = $val1. $value. $val2; /** write only $value? */ 
       echo $contents; 
       $novosti = $value .PHP_EOL; 
       if (fwrite($fhandle, $novosti) === FALSE) { 
        header("Location: ../error.php?err=updateVesti() fwrit = false"); 
        exit(); 
       } 
      } 
     }else{ 
      header("Location: ../error.php?err=updateVesti() file is not writible"); 
     } 
     fclose($fhandle); 
     header('Location: ../dir/index.php'); 
     exit(); 
    }else{ 
     exit(); 
    } 
} 

starken Text **

+0

Wenn Sie das tun wollen, sondern nur die '.innerHTML' eines Elements senden, um Ihre Form Wraps, über AJAX, dann' file_put_contents ($ filename, $ ajaxStringHere) 'in PHP. Natürlich halte ich das für eine schreckliche Praktik. Daten sollten getrennt von der DOM-Struktur bleiben. Verwenden Sie JavaScript AJAX, um Daten an den Server zu senden. Erstellen Sie nach der Antwort Ihr DOM. Daten sollten auf dem Server in einer Datenbank gespeichert werden. – PHPglue

+0

Stimme absolut mit dir PHPglue überein! Sicherlich sind meine Daten völlig getrennt von der DOM-Struktur mit PHP und JavaScript Ajax XML für die Kommunikation mit dem DB-Server. Was ich gemacht habe, war ein dummer Fehler, der wahrscheinlich durch eine müde, neue Variable '$ contents' gemacht wurde, ohne im letzten Schritt der Schleife vorherzusagen zu müssen, oder wie ich bereits in meiner Antwort gesagt habe, musste keine neue Variable verwenden der existierende $ Value, um geänderten Inhalt zu geben. Ich bin Ihnen wirklich dankbar für die Antwort. – Borache

Antwort

0

Аs wir erhält in der Regel zuverlässige Lösung! Lassen Sie die Arbeit für einige Zeit aus und die Lösung wird von alleine erscheinen! Geringfügige Änderungen im Codenamen für die Variable, und jetzt funktioniert gut! Wahrscheinlich aus Ermüdung machen solche Auslassungen, obwohl überraschend ist, dass ich ein ähnliches Problem auf der ganzen Linie nicht gefunden habe! Ich hoffe, dieses Beispiel wird jemandem helfen, wenn nichts anderes zu wissen, dass sie sich richtig ausruhen sollten, um frisch im Gehirn zu sein!

... 
$value = $val1. $value. $val2; // instead of $content 
    echo $value; 
    $novosti = $value .PHP_EOL; 
... 
Verwandte Themen