Hai qualche idea per il contatore?ciao
non avevo capito.
ci penso un momento
Hai qualche idea per il contatore?ciao
non avevo capito.
ci penso un momento
<?php
//.......
$num_successi=mysql_num_rows(mysql_query("SELECT id FROM successi"));
//.........
//se es risulta 10 il contatore degli archiviati deve partire da 11 per cui
$contatore = $num_successi+1;
//.....
?>
	ciao
è più semplice di quello che pensavo
nella pagina archivio_successi.php leggi quanti record hai nella tabella successi (non dell'archivio)
PHP:<?php //....... $num_successi=mysql_num_rows(mysql_query("SELECT id FROM successi")); //......... //se es risulta 10 il contatore degli archiviati deve partire da 11 per cui $contatore = $num_successi+1; //..... ?>
<?php
$numero=20; // Limite max successi da visualizzare
$num_successi=mysql_num_rows(mysql_query("SELECT id FROM successi"));   
// Lancio la query
$ris=mysql_query($q); 
if(mysql_num_rows($ris) > 0) { // Conto i record (i campi nella tabella del db)
    // Leggo un record alla volta e lo stampo
    $contatore = $num_successi+1; 
    while($riga=mysql_fetch_array($ris)) {
       //verifico se conteggio è pari o dispari e in alternato cambio il colore
        if($contatore%2==0) {
        $sfondo="#f7f7f7";
        }
        else {
        $sfondo="#e9eff1";
        }  
        echo "<div class=\"stampaS\" style=\"background-color: $sfondo \">"; 
        echo "<div class=\"dataBox\">".crea_data($riga['data_localeS'])."<div class=\"idSuccessiSX\"></div><div class=\"idSuccessiDX\">#$contatore</div></div>"; 
        echo "<div class=\"campiAltiS\">"; 
        echo "<div class=\"oggettoBox\">".$riga['oggettoS']."</div>"; 
        echo "</div>"; // campiAltiS  
        echo "<div class=\"messaggioBox\">".$riga['messaggioS']."</div>"; 
        echo "<div class=\"bassoS\"></div>"; // bassoS  
        echo "<div class=\"nomeBox\">".$riga['nomeS'].",</div>"; 
        if(!empty($riga['cittaS'])) {  // Se il campo è vuoto non stampa neanche la virgola 
            echo "<div class=\"cittaBox\">".$riga['cittaS'].",  </div>"; 
        } 
        echo "<div class=\"ipBox\">Ip: $ip</div>"; 
        echo "<div class=\"bandierinaBox\">$bandierina<div class=\"nazione\">".$countries[$two_letter_country_code][1]."</div></div>"; 
        echo "</div>";//stampaS
        $contatore ++; // a ogni giro incremento di uno  
    } 
 }
?>
	Appunto, quello è il codice che c'è in archivio_successiciao
no non devi metterlo li nella pagina successi.php (anzi rimettila come prima)
devi metterlo nella pagina in cui visualizzi l'archivio
Intedi questa?ciao
allora stai sbagliando , dove è la query di select alla tabella archivio-successi?
//*********Inizio trasferimento nella tabella archivio
 //Leggiamo tra i post estratti il valore max dell'id
$ris=mysql_query("SELECT MAX(id) as massimo FROM successi ORDER BY id DESC"); 
// Lancio la query  
$riga=mysql_fetch_array($ris); 
$vecchi_id=$riga['massimo']-$numero; 
if($vecchi_id >= 0) { //cioè maggiore o uguale a 0  
    //verifico che ci siano record precedenti 
    $ris=mysql_query("SELECT * FROM successi WHERE id <= $vecchi_id"); 
    if(mysql_num_rows($ris)>0) { //se maggiore di 0 ci sono records 
    while($riga=mysql_fetch_array($ris)) { 
             //estraggo tutti i dati del successo col valore minimo id dalla tabella successi...
            $id=$riga['id']; 
            $data_localeS=$riga['data_localeS'];
            $oggettoS=$riga['oggettoS']; 
            $messaggioS=$riga['messaggioS']; 
            $nomeS=$riga['nomeS']; 
            $cittaS=$riga['cittaS']; 
            $ip; 
            $bandierina;  
            //...e salvo il successo nella tabella archivio, l'insert è uguale a quello che c'è nella tabella successi  
            $ris_a=mysql_query("INSERT INTO archivio(data_localeS,oggettoS,messaggioS,nomeS,cittaS,ip,bandierina) 
            VALUES('$data_localeS','$oggettoS','$messaggioS','$nomeS','$cittaS','$ip','$bandierina')"); 
             //avendo salvato in tabella archivio posso eliminarlo dalla tabella successi
            $ris_d=mysql_query("DELETE FROM successi WHERE id=$id"); 
            //Questa riga ricarica la pagina e quindi aggiorna i contatori 
           echo "<meta http-equiv='refresh' content='0; url=".htmlspecialchars($_SERVER['PHP_SELF'])."'>";
        } 
    } 
  } 
}
//********fine del trasferimento
	<a href="successi.php">successi (<?php echo $numero_successi;?>)</a>
	<a href="archivio_successi.php">archivio (<?php echo $numero_successi_in_archivio;?>)</a>
	<?php
 //dati connessione
//$numero=20; // Limite max successi da visualizzare QUESTO NON TI SERVE visto ch vuoi (mi sembra) visualizzare tutti i successi archiviati
$num_successi=mysql_num_rows(mysql_query("SELECT id FROM successi")); 
//manca la riga seguente in cui seleziono i successi IN ARCHIVIO
$q= "SELECT * FROM archivio_successi ORDR BY id"; //metti asc o desc come preferisci
// Lancio la query
$ris=mysql_query($q); //qui senza la $q non sa cosa estrarre
if(mysql_num_rows($ris) > 0) { // Conto i record (i campi nella tabella del db)
    // Leggo un record alla volta e lo stampo
    $contatore = $num_successi+1; 
    while($riga=mysql_fetch_array($ris)) {
       //verifico se conteggio è pari o dispari e in alternato cambio il colore
        if($contatore%2==0) {
        $sfondo="#f7f7f7";
        }
        else {
        $sfondo="#e9eff1";
        }  
        echo "<div class=\"stampaS\" style=\"background-color: $sfondo \">"; 
        echo "<div class=\"dataBox\">".crea_data($riga['data_localeS'])."<div class=\"idSuccessiSX\"></div><div class=\"idSuccessiDX\">#$contatore</div></div>"; 
        echo "<div class=\"campiAltiS\">"; 
        echo "<div class=\"oggettoBox\">".$riga['oggettoS']."</div>"; 
        echo "</div>"; // campiAltiS  
        echo "<div class=\"messaggioBox\">".$riga['messaggioS']."</div>"; 
        echo "<div class=\"bassoS\"></div>"; // bassoS  
        echo "<div class=\"nomeBox\">".$riga['nomeS'].",</div>"; 
        if(!empty($riga['cittaS'])) {  // Se il campo è vuoto non stampa neanche la virgola 
            echo "<div class=\"cittaBox\">".$riga['cittaS'].",  </div>"; 
        } 
        echo "<div class=\"ipBox\">Ip: $ip</div>"; 
        echo "<div class=\"bandierinaBox\">$bandierina<div class=\"nazione\">".$countries[$two_letter_country_code][1]."</div></div>"; 
        echo "</div>";//stampaS
        $contatore ++; // a ogni giro incremento di uno  
    } 
 }
?>
	<?php
$numero=3; // Limite max successi da visualizzare
// Legge tutti i records nella tabella successi dall'alto verso il basso e li estrae in ordine crescente
$q="SELECT * FROM successi ORDER BY id ASC LIMIT $numero"; 
// Lancio la query
$ris=mysql_query($q); 
if(mysql_num_rows($ris) > 0) { // Conto i record (i campi nella tabella del db)
    // Leggo un record alla volta e lo stampo
    $contatore=1; //inizializzi il contatore a 1
    while($riga=mysql_fetch_array($ris)) {
        //verifico se il conteggio è pari o dispari e in alternato cambio il colore
        if($contatore%2==0) {
        $sfondo="#f7f7f7";
        }
        else {
        $sfondo="#e9eff1";  
        } 
        echo "<div class=\"stampaS\" style=\"background-color: $sfondo \">"; 
        echo "<div class=\"dataBox\">".crea_data($riga['data_localeS'])."<div class=\"idSuccessiSX\"></div><div class=\"idSuccessiDX\">#$contatore</div></div>"; 
        echo "<div class=\"campiAltiS\">"; 
        echo "<div class=\"oggettoBox\">".$riga['oggettoS']."</div>"; 
        echo "</div>"; // campiAltiS  
        echo "<div class=\"messaggioBox\">".$riga['messaggioS']."</div>"; 
        echo "<div class=\"bassoS\"></div>"; // bassoS  
        echo "<div class=\"nomeBox\">".$riga['nomeS'].",</div>"; 
        if(!empty($riga['cittaS'])) {  // Se il campo è vuoto non stampa neanche la virgola 
            echo "<div class=\"cittaBox\">".$riga['cittaS'].",  </div>"; 
        } 
        echo "<div class=\"ipBox\">Ip: $ip</div>";   
        echo "<div class=\"bandierinaBox\">$bandierina<div class=\"nazione\">".$countries[$two_letter_country_code][1]."</div></div>"; 
        echo "</div>";//stampaS 
        $contatore ++; // a ogni giro incremento di uno 
    }
 //*********Inizio trasferimento nella tabella archivio
 //Leggiamo tra i post estratti il valore max dell'id
$ris=mysql_query("SELECT MAX(id) as massimo FROM successi ORDER BY id DESC"); 
// Lancio la query  
$riga=mysql_fetch_array($ris); 
$vecchi_id=$riga['massimo']-$numero; 
if($vecchi_id >= 0) { //cioè maggiore o uguale a 0  
    //verifico che ci siano record precedenti 
    $ris=mysql_query("SELECT * FROM successi WHERE id <= $vecchi_id"); 
    if(mysql_num_rows($ris)>0) { //se maggiore di 0 ci sono records 
    while($riga=mysql_fetch_array($ris)) { 
             //estraggo tutti i dati del successo col valore minimo id dalla tabella successi...
            $id=$riga['id']; 
            $data_localeS=$riga['data_localeS'];
            $oggettoS=$riga['oggettoS']; 
            $messaggioS=$riga['messaggioS']; 
            $nomeS=$riga['nomeS']; 
            $cittaS=$riga['cittaS']; 
            $ip; 
            $bandierina;  
            //...e salvo il successo nella tabella archivio, l'insert è uguale a quello che c'è nella tabella successi  
            $ris_a=mysql_query("INSERT INTO archivio(data_localeS,oggettoS,messaggioS,nomeS,cittaS,ip,bandierina) 
            VALUES('$data_localeS','$oggettoS','$messaggioS','$nomeS','$cittaS','$ip','$bandierina')"); 
             //avendo salvato in tabella archivio posso eliminarlo dalla tabella successi
            $ris_d=mysql_query("DELETE FROM successi WHERE id=$id"); 
            //Questa riga ricarica la pagina e quindi aggiorna i contatori 
           echo "<meta http-equiv='refresh' content='0; url=".htmlspecialchars($_SERVER['PHP_SELF'])."'>";
        } 
    } 
  } 
}
//********fine del trasferimento 
else {  
echo "<p style=\"margin-left:30px;font-size:18px;color:#0000ff;\">Non ci sono ancora Successi, volevi scriverne uno?</p>"; 
}
	<?php
$numero=20; // Limite max successi da visualizzare
// Legge tutti i records nella tabella archivio dall'alto verso il basso e li estrae in ordine decrescente
$q="SELECT * FROM archivio ORDER BY id DESC LIMIT $numero";  
// Lancio la query
$ris=mysql_query($q); 
if(mysql_num_rows($ris) > 0) { // Conto i record (i campi nella tabella del db)
    // Leggo un record alla volta e lo stampo
    $contatore=1; //inizializzi il contatore a 1 
    while($riga=mysql_fetch_array($ris)) {
       //verifico se conteggio è pari o dispari e in alternato cambio il colore
        if($contatore%2==0) {
        $sfondo="#f7f7f7";
        }
        else {
        $sfondo="#e9eff1";
        }  
        echo "<div class=\"stampaS\" style=\"background-color: $sfondo \">"; 
        echo "<div class=\"dataBox\">".crea_data($riga['data_localeS'])."<div class=\"idSuccessiSX\"></div><div class=\"idSuccessiDX\">#$contatore</div></div>"; 
        echo "<div class=\"campiAltiS\">"; 
        echo "<div class=\"oggettoBox\">".$riga['oggettoS']."</div>"; 
        echo "</div>"; // campiAltiS  
        echo "<div class=\"messaggioBox\">".$riga['messaggioS']."</div>"; 
        echo "<div class=\"bassoS\"></div>"; // bassoS  
        echo "<div class=\"nomeBox\">".$riga['nomeS'].",</div>"; 
        if(!empty($riga['cittaS'])) {  // Se il campo è vuoto non stampa neanche la virgola 
            echo "<div class=\"cittaBox\">".$riga['cittaS'].",  </div>"; 
        } 
        echo "<div class=\"ipBox\">Ip: $ip</div>"; 
        echo "<div class=\"bandierinaBox\">$bandierina<div class=\"nazione\">".$countries[$two_letter_country_code][1]."</div></div>"; 
        echo "</div>";//stampaS
        $contatore ++; // a ogni giro incremento di uno  
    } 
 }
?>
	<?php
$numero=20; // Limite max successi da visualizzare
$num_successi=mysql_num_rows(mysql_query("SELECT id FROM successi")); //leggo in successi
//e aumento di 1
$num_successi +=1;
// QUESTA sotto NON legge tutti i records nella tabella archivio ma solo 20 dall'alto verso il basso e li estrae in ordine decrescente
$q="SELECT * FROM archivio ORDER BY id DESC LIMIT $numero";
//mentre se vuoi mostrare tutti gli archiviati correggila in
//$q="SELECT * FROM archivio ORDER BY id DESC";
//se tutti, togli pure la $numero=20; // Limite max successi da visualizzare
// Lancio la query
$ris=mysql_query($q); 
if(mysql_num_rows($ris) > 0) { // Conto i record (i campi nella tabella del db)
    // Leggo un record alla volta e lo stampo
    //faccio partire il contatore dal numero successivo dei successi
	$contatore=$num_successi; //inizializzi il contatore a 1 
	//$contatore=1; //inizializzi il contatore a 1 
    while($riga=mysql_fetch_array($ris)) {
       //verifico se conteggio è pari o dispari e in alternato cambio il colore
        if($contatore%2==0) {
        $sfondo="#f7f7f7";
        }
        else {
        $sfondo="#e9eff1";
        }  
        echo "<div class=\"stampaS\" style=\"background-color: $sfondo \">"; 
        echo "<div class=\"dataBox\">".crea_data($riga['data_localeS'])."<div class=\"idSuccessiSX\">
			</div><div class=\"idSuccessiDX\">#$contatore</div></div>"; 
        echo "<div class=\"campiAltiS\">"; 
        echo "<div class=\"oggettoBox\">".$riga['oggettoS']."</div>"; 
        echo "</div>"; // campiAltiS  
        echo "<div class=\"messaggioBox\">".$riga['messaggioS']."</div>"; 
        echo "<div class=\"bassoS\"></div>"; // bassoS  
        echo "<div class=\"nomeBox\">".$riga['nomeS'].",</div>"; 
        if(!empty($riga['cittaS'])) {  // Se il campo è vuoto non stampa neanche la virgola 
            echo "<div class=\"cittaBox\">".$riga['cittaS'].",  </div>"; 
        } 
        echo "<div class=\"ipBox\">Ip: $ip</div>"; 
        echo "<div class=\"bandierinaBox\">$bandierina<div class=\"nazione\">".$countries[$two_letter_country_code][1]."</div></div>"; 
        echo "</div>";//stampaS
        $contatore ++; // a ogni giro incremento di uno  
    } 
 }
?>
	se imposti limut 3 nella tabella successi acvrai solo 3 messaggi in quanto se un utente ne invia uno nuivi il più vecchio va in archivio (con lo script che ho fatto)1. nella pagina successi ho impostato 3max, mi stampa #1, #2, #3 fisso, mentre invece dovrebbe mostrare gli ultimi numeri, es se ho 5 messaggi dovrebbe mostrare #3, #4, #5
Lo so, ma il problema è che non aggiorna il contatore, quando come contatore usavo gli id, sull'ultimo post ricevuto era stampato anche l'ultimo numero-contatore, non c'era sempre stampato #3ciao
se imposti limut 3 nella tabella successi acvrai solo 3 messaggi in quanto se un utente ne invia uno nuivi il più vecchio va in archivio (con lo script che ho fatto)
questo perche altrimenti tra successi e archivio non potresti vederli tutti
// Lancio la query
$ris=mysql_query($q); 
if(mysql_num_rows($ris) > 0) { // Conto i record (i campi nella tabella del db)
	<?php
// Lancio la query
$ris=mysql_query($q); 
$qu=mysql_num_rows($ris);
//poi in funzione se sei in successi.php o archivio_successi.php
//se sei in successi.php
$num_altro=mysql_num_rows(mysql_query("SELECT id FROM archivio")); //leggo quanti su archivio
$totali=$qu+$num_altro;
/*mentre se sei in archivio_successi.php devi fare la query sulla tab successi
$num_altro=mysql_num_rows(mysql_query("SELECT id FROM successi")); //leggo quanti su successi
*/
//modificare l'if
if($qu > 0) { // Conto i record (i campi nella tabella del db){
// dentro il while
	echo ".......
            </div><div class=\"idSuccessiDX\">#$contatore di $totali</div></div>";
			//.....
//ecc....
?>
	Aspetta, forse non mi sono spiegato: semplicemente bisogna invertire il conteggio, tutto qui.ciao
non è semplice avere la botte piena e la moglie ubriaca, perchè il contatore conta le visualizzazioni mentre l'id può avrere (se cancelli qualche record) dei buchi
forse potresti fare in questo modo
sostituendoconPHP:// Lancio la query $ris=mysql_query($q); if(mysql_num_rows($ris) > 0) { // Conto i record (i campi nella tabella del db)
per cui ti si presenta es.PHP:<?php // Lancio la query $ris=mysql_query($q); $qu=mysql_num_rows($ris); //poi in funzione se sei in successi.php o archivio_successi.php //se sei in successi.php $num_altro=mysql_num_rows(mysql_query("SELECT id FROM archivio")); //leggo quanti su archivio $totali=$qu+$num_altro; /*mentre se sei in archivio_successi.php devi fare la query sulla tab successi $num_altro=mysql_num_rows(mysql_query("SELECT id FROM successi")); //leggo quanti su successi */ //modificare l'if if($qu > 0) { // Conto i record (i campi nella tabella del db){ // dentro il while echo "....... </div><div class=\"idSuccessiDX\">#$contatore di $totali</div></div>"; //..... //ecc.... ?>
#1 di 57 (o quello che è)
<?php
$numero=3; // Limite max successi da visualizzare
// Legge tutti i records nella tabella successi dall'alto verso il basso e li estrae in ordine crescente
$q="SELECT * FROM successi ORDER BY id ASC LIMIT $numero"; 
// Lancio la query
$ris=mysql_query($q); 
if(mysql_num_rows($ris) > 0) { // Conto i record (i campi nella tabella del db)
    // Leggo un record alla volta e lo stampo
    $contatore=1; //inizializzi il contatore a 1
    // Leggo un record alla volta e lo stampo 
    while($riga=mysql_fetch_array($ris)) {
        //verifico se il conteggio è pari o dispari e in alternato cambio il colore
        if($contatore%2==0) {
        $sfondo="#f7f7f7";
        }
        else {
        $sfondo="#e9eff1";  
        } 
        echo "<div class=\"stampaS\" style=\"background-color: $sfondo \">"; 
        echo "<div class=\"dataBox\">".crea_data($riga['data_localeS'])."<div class=\"idSuccessiSX\"></div><div class=\"idSuccessiDX\">#$contatore</div></div>"; 
        echo "<div class=\"campiAltiS\">"; 
        echo "<div class=\"oggettoBox\">".$riga['oggettoS']."</div>"; 
        echo "</div>"; // campiAltiS  
        echo "<div class=\"messaggioBox\">".$riga['messaggioS']."</div>"; 
        echo "<div class=\"bassoS\"></div>"; // bassoS  
        echo "<div class=\"nomeBox\">".$riga['nomeS'].",</div>"; 
        if(!empty($riga['cittaS'])) {  // Se il campo è vuoto non stampa neanche la virgola 
            echo "<div class=\"cittaBox\">".$riga['cittaS'].",  </div>"; 
        } 
        echo "<div class=\"ipBox\">Ip: $ip</div>";   
        echo "<div class=\"bandierinaBox\">$bandierina<div class=\"nazione\">".$countries[$two_letter_country_code][1]."</div></div>"; 
        echo "</div>";//stampaS 
        $contatore ++; // a ogni giro incremento di uno 
    }
	
	<?php
//.......
$q="SELECT * FROM successi ORDER BY id ASC LIMIT $numero"; 
// Lancio la query
$ris=mysql_query($q); 
//ricavi il numero di record e quindi poi modifichi anche l'if
$num_successi=mysql_num_rows($ris);
if($num_successi > 0) { // Conto i record (i campi nella tabella del db)
    // Leggo un record alla volta e lo stampo
	//fai partire il contatore dal numero di successi
    $contatore=$num_successi; //inizializzi il contatore a 1
    // Leggo un record alla volta e lo stampo  
    while($riga=mysql_fetch_array($ris)) {
        //verifico se il conteggio è pari o dispari e in alternato cambio il colore 
//.........
        echo "</div>";//stampaS
		//invece di incrementare per uno lo decrementi
        $contatore --; // a ogni giro lo decrementi di uno 
    }
//......
?>