Come far aprire php a un file html, andare su due righe, quindi scrivere lì e chiudere?

StackOverflow https://stackoverflow.com/questions/499542

  •  20-08-2019
  •  | 
  •  

Domanda

Sto creando un file php litte per registrare alcuni indirizzi IP. Scriverà l'ip e la data / ora in un file html. Il file html sarà una tabella. Quindi voglio farlo in questo modo:

<table cellpadding="6" rules="groups"  frame="no">
<thead>
<tr><th>IP</th><th>Date</th><th>Time</th></tr>

</thead>
<tbody>
<tr><td>192.168.0.1</td><td>31. January 2009</td><td>19:21:09</td></tr> 
</tbody>
</table>

Quindi ne ho bisogno per aprire il file, scrivere l'ip e la data / ora sulla riga sopra </table> Ho già il php per scrivere quello che voglio, ma scrive il fondo.

Sono un principiante, non so cosa mettere dove ..

Questo è quello che ho:

<?php
$ip = $_SERVER['REMOTE_ADDR']; 
$date = date("j. F Y"); 
$time = date("H:i:s"); 
$file = fopen('./iplogg.html', 'a', 1); 
$text="<tr><td>{$ip}</td><td>{$date}</td><td>{$time}</td></tr> \n"; 
fwrite($file, $text); 
fclose($file); 
?>
È stato utile?

Soluzione

Suppongo che ci sia una sola tabella nel file. Se ce n'è più di uno, questo verrà aggiunto a ciascuno.

<?php
$ip = $_SERVER['REMOTE_ADDR']; 
$date = date("j. F Y"); 
$time = date("H:i:s"); 
$text="<tr><td>{$ip}</td><td>{$date}</td><td>{$time}</td></tr> \n"; 

$originalfile = file_get_contents ('./iplogg.html');
$newFile = str_replace('</table>',$text.'</table>',$originalfile);
file_put_contents('./iplogg.html', $newFile);
?>    

MODIFICA Ho combinato il mio suggerimento con il tuo codice

Altri suggerimenti

Quello che suggerirei è l'uso di 2 file, un file .log per memorizzare i dati non elaborati e uno script .php che legge da quel file .log e genera una tabella. Le ragioni principali sono:

1) il tuo file .log rimarrà molto più piccolo

2) se vuoi mai cambiare il layout, è sempre possibile modificando lo script .php

3) quando il tuo file .log diventa ENORME, potrebbe non essere possibile memorizzarne il contenuto in una stringa con file_get_contents

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top