Stampare div uno sotto l'altro come nei forum

Shyson

Utente Attivo
19 Ago 2012
1.179
1
38
Si è inspiegabilmente sistemato anche questo: ho spento il mac, l'ho riacceso e anche la pagina offline funziona, i box non sballano più se modifico messaggi.html.

Perciò direi che siamo alla fine, ho solo bisogno di mandare automaticamente in un file archivio i messaggi che superano il 20.

Come db si può sempre usare il file messaggi.html ma ovviamente li deve stampare in una nuova pagina che poi io sistemerò
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.046
150
63
PR
www.borgo-italia.it
ciao
allora forse il problema era che non azzeravi la cache tra una prova e una prova dopo modifica.
fattibile, devi fare le modifiche dove fa l'inserimento (sposta i record) e lo spostato lo inserisci in un nuovo file
 

Shyson

Utente Attivo
19 Ago 2012
1.179
1
38
ciao
allora forse il problema era che non azzeravi la cache tra una prova e una prova dopo modifica.
fattibile, devi fare le modifiche dove fa l'inserimento (sposta i record) e lo spostato lo inserisci in un nuovo file

Questa parte dici?

PHP:
// ...3/6 - In questa sequenza stampa in messaggi.html
$mess_da_ins=$data_localeS."|".$oggettoS."|".$messaggioS."|".$nomeS."|".$cittaS."|".$suoemailS."|".$ip."|".$bandierina."\n";
$mess_ultimo=2;  //numero di messaggi massimo da visualizzare

 // ...4/6
if ($erroreS=="") {
if(file_exists('messaggi.html')){
        $righe = file('messaggi.html');
        $quante=count($righe);
        if($quante==0){  //il file messaggi.html esiste ma è vuoto
            $inserire=$mess_da_ins;
        }elseif($quante == 1){  //esiste una sola riga
            $inserire=$righe[0].$mess_da_ins;
        }elseif($quante > 1){
            if($quante < $mess_ultimo){
                $righe[$quante]=$mess_da_ins;
            }else{
                //sposto in su i messaggi (in pratica elimino il più vecchio)...
                for($k= 0; $k< ($quante-1);$k++){
                    $j=$k+1;
                    $righe[$k]=$righe[$j];
                }
            $righe[$mess_ultimo]=$mess_da_ins; //...e aggiungo l'ultimo
            }
            foreach($righe as $ch => $testo){ //preparo la stringa da salvare
                $inserire.=$testo;
            }
        }
        file_put_contents('messaggi.html', $inserire);
    }
    else {
        file_put_contents('messaggi.html', $mess_da_ins);
    }
    session_destroy();
...
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.046
150
63
PR
www.borgo-italia.it
ciao
prova in questo modo (non giuro che funzi, l'ho buttata giu di getto)
PHP:
<?php
//........
}else{
                //sposto in su i messaggi (in pratica elimino il più vecchio)...
				//in prtatica qui
				//verifichi che esista il file archivio
				if(file_exists('archivio.html')){//il file esiste
					//leggi le righe del file archivio
					$righe_arc=file_get_contents('archivio.html');
					//inserisci quella cha andrai a cancellare
					$righe_arc[]=$righe[($quante-1)];
					//preparo la stringa da salvare
					foreach($righe_arc as $ch_a => $testo_a){ //preparo la stringa da salvare
                		$inserire_a.=$testo_a;
            		}
					//e riscrivo
					file_put_contents('archivio.html', $inserire_a);
					
				}else{//il file ancora non esiste quindi lo creo inserendo
					file_put_contents('archivio.html', $righe[($quante-1)]);
				}
                for($k= 0; $k< ($quante-1);$k++){
                    $j=$k+1;
                    $righe[$k]=$righe[$j];
                } 
//...........
?>

aahhh, quante meno grane con mysql
 

Shyson

Utente Attivo
19 Ago 2012
1.179
1
38
ciao
prova in questo modo (non giuro che funzi, l'ho buttata giu di getto)
PHP:
<?php
//........
}else{
                //sposto in su i messaggi (in pratica elimino il più vecchio)...
				//in prtatica qui
				//verifichi che esista il file archivio
				if(file_exists('archivio.html')){//il file esiste
					//leggi le righe del file archivio
					$righe_arc=file_get_contents('archivio.html');
					//inserisci quella cha andrai a cancellare
					$righe_arc[]=$righe[($quante-1)];
					//preparo la stringa da salvare
					foreach($righe_arc as $ch_a => $testo_a){ //preparo la stringa da salvare
                		$inserire_a.=$testo_a;
            		}
					//e riscrivo
					file_put_contents('archivio.html', $inserire_a);
					
				}else{//il file ancora non esiste quindi lo creo inserendo
					file_put_contents('archivio.html', $righe[($quante-1)]);
				}
                for($k= 0; $k< ($quante-1);$k++){
                    $j=$k+1;
                    $righe[$k]=$righe[$j];
                } 
//...........
?>

aahhh, quante meno grane con mysql
Dove va messo? In ogni punto non mi apre la pagina, non si può usare lo stesso file messaggi.html come db?
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.046
150
63
PR
www.borgo-italia.it
ciao
non si può usare lo stesso file messaggi.html come db
se fosse così semplice non avrebbero inventato i db.
così di getto come detto mi è venuto in mente di usare un altro file. puo essere fattibile, ma devo pensarci e modificare, quasi sicuramente quello sin ora fatto (sia in lettura quando stampi a monitor che in scrittura quando l'utente ti invia un nuovo messaggio)

edit
tra la riga del commento
//sposto in su i messaggi (in pratica elimino il più vecchio)...
e la riga del for che sposta i messaggi
 
Ultima modifica:

Shyson

Utente Attivo
19 Ago 2012
1.179
1
38
ciao
se fosse così semplice non avrebbero inventato i db.
così di getto come detto mi è venuto in mente di usare un altro file. puo essere fattibile, ma devo pensarci e modificare, quasi sicuramente quello sin ora fatto (sia in lettura quando stampi a monitor che in scrittura quando l'utente ti invia un nuovo messaggio)

edit
tra la riga del commento
//sposto in su i messaggi (in pratica elimino il più vecchio)...
e la riga del for che sposta i messaggi
Qualcosa non quadra, sparisce metà pagina dei successi, io pensavo, non è più semplice una cosa del tipo: "se più di 20 messaggi spostali in archivio.html", e qui si chiude un ciclo.

Poi nella pagina archivio_messaggi.php metto il richiamo dal db (archivio_messaggi.html)

Ho messo così ma non quadra qualcosa

PHP:
if ($erroreS=="") {
if(file_exists('messaggi.html')){
        $righe = file('messaggi.html');
        $quante=count($righe);
        if($quante==0){  //il file messaggi.html esiste ma è vuoto
            $inserire=$mess_da_ins;
        }elseif($quante == 1){  //esiste una sola riga
            $inserire=$righe[0].$mess_da_ins;
        }elseif($quante > 1){
            if($quante < $mess_ultimo){
                $righe[$quante]=$mess_da_ins;
            }else{
                //sposto in su i messaggi (in pratica elimino il più vecchio)...
                
                //in prtatica qui
                //verifichi che esista il file archivio
                if(file_exists('archivio.html')){//il file esiste
                    //leggi le righe del file archivio
                    $righe_arc=file_get_contents('archivio.html');
                    //inserisci quella cha andrai a cancellare
                    $righe_arc[]=$righe[($quante-1)];
                    //preparo la stringa da salvare
                    foreach($righe_arc as $ch_a => $testo_a){ //preparo la stringa da salvare
                        $inserire_a.=$testo_a;
                    }
                    //e riscrivo
                    file_put_contents('archivio.html', $inserire_a);
                    
                }else{//il file ancora non esiste quindi lo creo inserendo
                    file_put_contents('archivio.html', $righe[($quante-1)]);
                }
                
                for($k= 0; $k< ($quante-1);$k++){
                    $j=$k+1;
                    $righe[$k]=$righe[$j];
                }
            $righe[$mess_ultimo]=$mess_da_ins; //...e aggiungo l'ultimo
            }
            foreach($righe as $ch => $testo){ //preparo la stringa da salvare
                $inserire.=$testo;
            }
        }
        file_put_contents('messaggi.html', $inserire);
    }
    else {
        file_put_contents('messaggi.html', $mess_da_ins);
    }
    session_destroy();
 

Shyson

Utente Attivo
19 Ago 2012
1.179
1
38
Borgo Italia, sei sparito?

Il problema è sempre il codice in rosso, quando clicc o invia del form, il form sparisce (rimangono solo i box) e non invia

// ...3/6 - In questa sequenza stampa in messaggi.html
$mess_da_ins=$data_localeS."|".$oggettoS."|".$messaggioS."|".$nomeS."|".$cittaS."|".$suoemailS."|".$ip."|".$bandierina."\n";
$mess_ultimo=2; //numero di messaggi massimo da visualizzare

//$messaggioS = ($mess_ultimo >=2);
//file_put_contents("archivio.html",$messaggioS);

// ...4/6
if ($erroreS=="") {
if(file_exists('messaggi.html')){
$righe = file('messaggi.html');
$quante=count($righe);
if($quante==0){ //il file messaggi.html esiste ma è vuoto
$inserire=$mess_da_ins;
}elseif($quante == 1){ //esiste una sola riga
$inserire=$righe[0].$mess_da_ins;
}elseif($quante > 1){
if($quante < $mess_ultimo){
$righe[$quante]=$mess_da_ins;
}else{
//sposto in su i messaggi (in pratica elimino il più vecchio)...

//verifichi che esista il file archivio
if(file_exists('archivio.html')){//il file esiste
//leggi le righe del file archivio
$righe_arc=file_get_contents('archivio.html');
//inserisci quella cha andrai a cancellare
$righe_arc[]=$righe[($quante-1)];
//preparo la stringa da salvare
foreach($righe_arc as $ch_a => $testo_a){ //preparo la stringa da salvare
$inserire_a.=$testo_a;
}
//e riscrivo
file_put_contents('archivio.html', $inserire_a);

}else{//il file ancora non esiste quindi lo creo inserendo
file_put_contents('archivio.html', $righe[($quante-1)]);
}


for($k= 0; $k< ($quante-1);$k++){
$j=$k+1;
$righe[$k]=$righe[$j];
}
$righe[$mess_ultimo]=$mess_da_ins; //...e aggiungo l'ultimo
}
foreach($righe as $ch => $testo){ //preparo la stringa da salvare
$inserire.=$testo;
}
}
file_put_contents('messaggi.html', $inserire);
}
else {
file_put_contents('messaggi.html', $mess_da_ins);
}
session_destroy();
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.046
150
63
PR
www.borgo-italia.it
ciao
no non sono sparito è che sto seguendo anche altri
ma prima funzionava (a parte i difetti del \n)?
comunque ci do un occhio poi ti so dire (forse e sottolineo forse) ho una mezza idea per semplificare il tutto
 

Shyson

Utente Attivo
19 Ago 2012
1.179
1
38
ciao
no non sono sparito è che sto seguendo anche altri
ma prima funzionava (a parte i difetti del \n)?
comunque ci do un occhio poi ti so dire (forse e sottolineo forse) ho una mezza idea per semplificare il tutto
Tutto funziona, è quello in rosso che dovrebbe spostare i messaggi (oltre i 2) nell'archivio, che da problemi
 

Shyson

Utente Attivo
19 Ago 2012
1.179
1
38
Senti, che dici se facciamo l'esperienza del db? Però mi segui e mi insegni?

Altervista ha questo phpMyAdmin - 2.11.11.3
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.046
150
63
PR
www.borgo-italia.it
ciao
Senti, che dici se facciamo l'esperienza del db? Però mi segui e mi insegni?
no problem.
il phpMyAdmin va bene, hai provato a collegarti al/ai tuo/tuoi databse?
tra l'altro dovresti averlo anche in locale (non so che server locale usi per php, ma generalmente sono assieme)
 

Shyson

Utente Attivo
19 Ago 2012
1.179
1
38
ciao

no problem.
il phpMyAdmin va bene, hai provato a collegarti al/ai tuo/tuoi databse?
tra l'altro dovresti averlo anche in locale (non so che server locale usi per php, ma generalmente sono assieme)
In locale uso MAMP, a me piacerebbe che ne posso avere uno anche in locale.

Sono entrato nel db,
Img_03.jpg
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.046
150
63
PR
www.borgo-italia.it
ciao
alcune cose:
1) ho dato un occhio a mamp e se l'hai installato bene hai anche mysql e phpmyadmin, non so il numero di porta che hai utilizzato, ma se digiti sul bw
http://localhost:8080/
dovresti accedere all'interfaccia di mamp (credo che sia simile a quello che ho io).
da li dovresti poter accedere a phpmyadmin, ti richiede l'user e la pass (generalmente di default user= root, password=password)
2) se non lo sai usare (è molto semplice) guarda questo articolo
https://www.mrw.it/php/guide/guida-phpmyadmin/
3) per capire poi quello che andremo a fare ti conviene tenere d'occhio anche la guida
https://www.mrw.it/mysql/guide/guida-mysql/
4) importante: conviene che tu apra un altra discussione (questa sta diventanto lunga come la divina commedia), tra l'altro potrebbe interessare anche ad altri utenti
5) importante: prima di gettarti a corpo morto sul problema non dimenticarti di usare carta e matita per definire bene quello che fai (partiremo a costruire una tabella)

p.s.
dopo un po' ti accorgerai quante cose puoi fare in più con php+mysql
 

Shyson

Utente Attivo
19 Ago 2012
1.179
1
38
ciao
alcune cose:
1) ho dato un occhio a mamp e se l'hai installato bene hai anche mysql e phpmyadmin, non so il numero di porta che hai utilizzato, ma se digiti sul bw
http://localhost:8080/
dovresti accedere all'interfaccia di mamp (credo che sia simile a quello che ho io).
da li dovresti poter accedere a phpmyadmin, ti richiede l'user e la pass (generalmente di default user= root, password=password)
2) se non lo sai usare (è molto semplice) guarda questo articolo
https://www.mrw.it/php/guide/guida-phpmyadmin/
3) per capire poi quello che andremo a fare ti conviene tenere d'occhio anche la guida
https://www.mrw.it/mysql/guide/guida-mysql/
4) importante: conviene che tu apra un altra discussione (questa sta diventanto lunga come la divina commedia), tra l'altro potrebbe interessare anche ad altri utenti
5) importante: prima di gettarti a corpo morto sul problema non dimenticarti di usare carta e matita per definire bene quello che fai (partiremo a costruire una tabella)

p.s.
dopo un po' ti accorgerai quante cose puoi fare in più con php+mysql
Ho questo, ma Apache e myslq sono 2 cose diverse? Poi apro una nuova discussione
 

Allegati

  • Img_01.jpg
    Img_01.jpg
    33,4 KB · Visite: 233

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.046
150
63
PR
www.borgo-italia.it
ciao
si sono due cose diverse
apache è quello che serve per simulare il server locale, senza di quello non potresti simulare in locale come se le pagine fossere hostate in remoto
(le pagine dinamiche come php non potrebbero funzionare in locale senza)
mysql è un db (non so se conosci access suppergiù è la stessa cosa, ma molto più semplice)
non conosco mamp, chiedo a chi sa sperando che mi risponda
 

Shyson

Utente Attivo
19 Ago 2012
1.179
1
38
ciao
si sono due cose diverse
apache è quello che serve per simulare il server locale, senza di quello non potresti simulare in locale come se le pagine fossere hostate in remoto
(le pagine dinamiche come php non potrebbero funzionare in locale senza)
mysql è un db (non so se conosci access suppergiù è la stessa cosa, ma molto più semplice)
non conosco mamp, chiedo a chi sa sperando che mi risponda
Io non ho nemmeno capito come cominciare
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.046
150
63
PR
www.borgo-italia.it
ciao
ho letto (non tutto) il tutorial che hai postato e la parte che ti interessa per mysql è (da quello che capisco usi di già php in locale)

MAMP è fornito di phpMyAdmin per amministrare MySQL che è raggiungibile attraverso questa url: http://127.0.0.1/phpMyAdmin/

I parametri per accedere al server MySQL sono:
Host = localhost
User = root
Password = root

da quello che ho capito se apri il tuo browser e digiti
http://127.0.0.1/phpMyAdmin/
dovrebbe aprirsi una pagina in cui ti chiede l'user e la password, digitate si apre phpmyadmin

prova e sappimi dire (poi partiamo da li)
comunque ribadisco apri un altra discussione
 
Discussioni simili
Autore Titolo Forum Risposte Data
S estrarre e stampare a video un record in un div PHP 7
G Stampare valori in più div con PHP e MySQL PHP 4
I stampare una stringa echo PHP 2
F Stampare valori di un database PHP 14
A Stampare dati da form PHP 15
Y Stampare da php su un foglio A6 attraverso una stampante esterna PHP 1
G leggere file txt e stampare con php il contenuto a video PHP 7
F stampare a video i risultati della query PHP 1
elpirata Ricavare e stampare indirizzo ip da array associativo PHP 0
B Stampare una porzione della pagina PHP 0
V Come stampare su Excel tabella con rowspan e colspan Javascript 2
elpirata Stampare carattere simbolo euro PHP 10
W Stampare file PDF in varie modalità. Windows e Software 5
L pdo (stampare un valore con ritorno a funzione) PHP 0
P [PHP] Aggiungere giorni e stampare risultato da data inserita in input PHP 3
P [PHP] Stampare record di diverse tabelle ma con nomi uguali PHP 6
K [PHP] Stampare tabella da database differenti. PHP 4
M Stampare con php e mysql PHP 8
L [PHP] stampare un'array di un database PHP 0
J modifica spooler di stampa per stampare in ordine di nome i files pdf Windows e Software 2
T PHP+MYSQL: stampare record con numero progressivo PHP 3
cristoforo58 Stampare dei valori XML in PHP PHP 0
elpirata [PHP] Stampare i valori di una variabile scritta su più righe PHP 1
K [PHP] Cancellare e Stampare tabella PHP 3
M [PHP] come stampare un Qr-code in FPDF PHP 8
M [Javascript] "Stampare" nel codice Var JS Javascript 5
N [PHP] stampare pagina html PHP 0
fulviozecchin [Java] Stampare intervallo tra due interi senza cicli Java 2
F [PHP] Stampare dati inviati tramite ajax PHP 0
elpirata [RISOLTO]Stampare giorno della settimana in tabella php PHP 6
elpirata [PHP] [RISOLTO] Stampare classe css in base al risultato della query PHP 6
Fuego2806 Stampare dati Form su immagine di sfondo con html HTML e CSS 1
Fuego2806 [PHP] Stampare dati Form su immagine di sfondo con html PHP 70
webmachine [PHP] Problema: Stampare tutte le occorrenza di una SELECT PHP 2
momeraths come stampare immagini contenute in un database PHP 7
I stampare in video i dati inseriti nel db PHP 1
M Sito "e-commerce", stampare dati di registrazione e dati dell'acquisto da pagine diverse PHP 7
L Stampare immagine php PHP 2
elpirata Stampare a video in echo table il risultato di una query PHP 4
Shyson Stampare lista in ordine decrescente Database 1
A Stampare senza sidebar Javascript 0
F stampare array php PHP 2
N Non stampare valori duplicati PHP 1
T Stampare maschera fronte/retro MS Access 0
C Stampare font personalizzati HTML e CSS 2
N FPDF stampare pdf automaticamente su stampante impostata PHP 0
M Stampare valore di un array PHP 1
P Stampare a video PHP 1
P Stampare '<?' in php PHP 7
D Stampare una query in una tabella MySQL 2

Discussioni simili