|
||||
|
Ciao a tutti, dopo un bel pezzo che non mi faccio vivo qua torno a scrivere con un piccolo dilemma (per me ovviamente
In pratica ho utilizzato la funzione fopen("","r+"); per scrivere in un database (*.txt) di testo dove il mio scopo è (attraverso un apposito form) scrivere devi nuovi messaggi sopra quelli "vecchi". La mia pratica si ferma a metà in quanto r+ mi cancella parte del vecchio messaggio Ora vi posto un pò di codice Codice PHP:
Ah, il testo che si dovrebbe scrivere nel database è composto in parte anche da HTML, forse è per questo che il risultato va per metà a buon fine? Se si, come ovviare il problema??? Grazie per il vostro aiuto
__________________
|
|
||||
|
quando apri un file con r+, ti posizioni all'inizio del file, e da li sovrascrivi, carattere per carattere. Se il primo messaggio nel file era lungo 50 caratteri, e quello con cui vuoi aggiornarlo è lungo 55, sforerai di 5 caratteri "sopra" la riga successiva, mangiandotene l'inizio (ed in effetti, anche il ritorno a capo, qiundi finisci per unire due righe)
__________________
chezDreadnaut — dailyDreadnaut — Qualcosa da leggere: "Un <BR/> è impuro, punto." "I <P> </P> non hanno diritto di esistere."
|
|
||||
|
grazie dreadnaut, non lo avevo proprio capito :)
Quindi diciamo che l'unico che "mantiene intatto" il database è il valore a o a+ in quanto scrive sotto il contenuto già presente :P Ma allora come posso ovviare il problema? Cioè come posso lasciare invariati i precedenti contenuti e scriverne dei nuovi nella riga sopra? grazie ancora
__________________
|
|
||||
|
in questo caso purtroppo ti toccherebbe riscrivere tutto il file, eliminando il primo pezzo.
Se la cosa è per te troppo dispendiosa, ripensa un attimo a quello che vuoi fare, e prova a riprogettare il sistema in modo che il contenuto posso finire in fondo.
__________________
chezDreadnaut — dailyDreadnaut — Qualcosa da leggere: "Un <BR/> è impuro, punto." "I <P> </P> non hanno diritto di esistere."
|
|
||||
|
Citazione:
qualsiasi cosa basta che la capisco ![]() Citazione:
Grazie dreadnaut sei stato gentilissimo!
__________________
|
![]() |
| Strumenti discussione | |
| Modalità visualizzazione | |
|
|
|
|