Pagina 2 di 3 primaprima 1 2 3 ultimoultimo
Visualizzazione dei risultati da 11 a 20 su 23
  1. #11
    Prova così:
    Codice PHP:
    <?php   
    } else {   
    $id=$_GET['voto'];  
     
    $c=$_GET['c'];  
     
    $cont=$c;  
     
    $cont++;  
     echo 
    $cont;  
     echo 
    "
    "
    ;  
     echo 
    $id;   
    $sql_update" UPDATE foto SET count=".$cont." WHERE id_foto=".$id;   
    mysql_query($sql_update) or die("errore nella composizione della query4"); ?>
    Ce l'ho fatta! - ItalianPixel -

  2. #12
    ma quale varchar e varchar...è un numero e int va mantenuto anche nel db
    Quanto siete bigotti con queste type!
    Ce l'ho fatta! - ItalianPixel -

  3. #13
    Originariamente inviato da portapipe
    Prova così:
    Codice PHP:
    <?php   
    } else {   
    $id=$_GET['voto'];  
     
    $c=$_GET['c'];  
     
    $cont=$c;  
     
    $cont++;  
     echo 
    $cont;  
     echo 
    "
    "
    ;  
     echo 
    $id;   
    $sql_update" UPDATE foto SET count=".$cont." WHERE id_foto=".$id;   
    mysql_query($sql_update) or die("errore nella composizione della query4"); ?>

    Ma così non cambia niente! Comunque si! negli echo i valori id e count sono giusti! ma da sempre lo stesso errore!

    Ho notato anche una nuova cosa alquanto strana! Se riaggiorno la pagina e controllo sul db mi aggiorna il contatore con il giusto valore! Quindi mi sa che probabilmente faccio un errore prima... posto tutto il codice?

  4. #14
    Cambia perché questo è il metodo giusto, visto che associ una query di update ad una variabile, il che non ha molto senso.
    Comunque posta il codice dal quale estrai i due contatori.
    Ce l'ho fatta! - ItalianPixel -

  5. #15
    Eccolo

    Questa parte la faccio sia che la pagina sia stata caricata la prima volta che se si è fatto il post. A parte la prima query che mi sono accorto non ha molto senso e devo modificarla, il resto dovrebbe essere giusto!
    Codice PHP:
    //prendo il valore massimo di foto presenti nel db
    $sqlcont "SELECT COUNT(id_foto) AS num FROM foto ";
    $querycont mysql_query($sqlcont$db) or die("errore nella composizione della query1");
    $rigacount mysql_fetch_array($querycont);
    $max $rigacount['num'];
    do {
    //prendo due id a caso e controllo che siano diversi
    $id_f1 rand(1$max);
    do {
        
    $id_f2 rand(1$max);
    } while (
    $id_f1 == $id_f2);

    //prendo tutti i parametri della prima foto estratta
    $sql "SELECT * FROM foto WHERE id_foto=$id_f1 AND tipo=0 AND canc=0 ";
    $query mysql_query($sql$db) or die("errore nella composizione della query2");
    $riga1 mysql_fetch_array($query);
    $nq1=mysql_num_rows($query);
    $id1 $riga1['id_foto'];
    $nome1 $riga1['nome'];
    $foto1 $riga1['link'];
    $cont1 $riga1['count'];
    //prendo tutti i parametri della prima foto estratta
    $sql "SELECT * FROM foto WHERE id_foto=$id_f2 AND tipo=0 AND canc=0 ";
    $query2 mysql_query($sql$db) or die("errore nella composizione della query3");
    $riga2 mysql_fetch_array($query2);
    $nq2=mysql_num_rows($query2);
    $id2 $riga2['id_foto'];
    $nome2 $riga2['nome'];
    $foto2 $riga2['link'];
    $cont2 $riga2['count'];
    } while (
    $nq1==AND $nq2==0);//Controllo che gli id presi a random non siano di foto cancellate fisicamente o logicamente
    ?> 

    Codice PHP:
    if ((!isset($_GET['voto']))and (!isset($_GET['c']))) {
                                        ?>      //controllo se c'è stato il post o meno
                                        <center>
                                            <table valign='top' style=';margin-left:25px' align='center'><tr>
                                                    <td hight='400px' valign='top' align='center'>[url='index.php?voto=<?php echo $id1?>&c=<?php echo $cont1?>'][img]foto/<?php echo $foto1?>[/img][/url]
                                                    </td>    
                                                    <td hight='400px' valign='top' align='center'>[url='index.php?voto=<?php echo $id2?>&c=<?php echo $cont2?>'][img]foto/<?php echo $foto2?>[/img][/url]
                                                    </td>
                                                </tr>
                                                <tr> <td align='center'><?php echo $nome1?> </td>
                                                    <td align='center'><?php echo $nome2?></td>
                                                </tr>
                                            </table>
                                        </center>
                                        <?php 

    //mostro le foto che bisogna votare e come link metto i due id e i 2 contatori
    } else {  //se c'è stato il post
    $id=$_GET['voto'];  //prendo i valori con il metodo get
    $c=$_GET['c']; 
    $cont=$c
    $cont++;  //aggiorno contatore
    echo $cont;  //controllo a video che i valori siano giusti (e lo sono)
    echo "
    "

    echo 
    $id
    $sql_update" UPDATE foto SET count=".$cont." WHERE id_foto=".$id
    $query_update1 mysql_query($sql_update) or die("errore nella composizione della query4"); ?> 
     //scrivo la query e la faccio eseguire

                                        <center> //faccio vedere le nuove foto generate con la funzione random che c'è sopra
                                            <table valign='top' style=';margin-left:25px' align='center'><tr>
                                                    <td hight='400px' valign='top' align='center'>[url='index.php?voto=<?php echo $id1?>&c=<?php echo $cont1?>'][img]foto/<?php echo $foto1?>[/img][/url]
                                                    </td>    
                                                    <td hight='400px' valign='top' align='center'>[url='index.php?voto=<?php echo $id2?>&c=<?php echo $cont2?>'][img]foto/<?php echo $foto2?>[/img][/url]
                                                    </td>
                                                </tr>
                                                <tr> <td align='center'><?php echo $nome1?> </td>
                                                    <td align='center'><?php echo $nome2?></td>
                                                </tr>
                                            </table>
                                        </center>
                                        <?php
                                    
    }
                                    
    ?>
    Questo è il codice completo, vi ho risparmiato tutto il template con le varie pubblicità e menu. Non riesco a capire proprio...

    SOPRATTUTTO XK SE RIAGGIORNO LA PAGINA L'UPDATE VA!

  6. #16
    Per me fai un pò di confusione.
    Allora: estrai il valore dei contatori, clicchi sulla foto e vai ad una pagina che ti aggiorna il contatore nel database.
    Per vedere il nuovo valore devi fare una nuova query, dopo l'aggiornamento, che ti mostra il nuovo numero aggiornato. La devi rifare la query però! Oppure dopo averla aggiornata con UPDATE fai un redirect alla stessa pagina, aggiornandoti i dati.
    Ce l'ho fatta! - ItalianPixel -

  7. #17
    a prescindere che dopo l'update devi rifare la query per aggiornare i dati da stampare in html (a meno del redirect), come scritto in pvt non capisco perchè poi dannarti tanto portandoti dietro il count quando basta

    codice:
    update foto set count = count + 1 where id = $id
    IP-PBX management: http://www.easypbx.it

    Old account: 2126 messages
    Oldest account: 3559 messages

  8. #18
    a prescindere che dopo l'update devi rifare la query per aggiornare i dati da stampare in html (a meno del redirect), come scritto in pvt non capisco perchè poi dannarti tanto portandoti dietro il count quando basta


    update foto set count = count + 1 where id = $id


    per non parlare del fatto che se due utenti cliccano sulla foto più o meno insieme, uno dei due voti lo perdi
    IP-PBX management: http://www.easypbx.it

    Old account: 2126 messages
    Oldest account: 3559 messages

  9. #19
    Alt, non avete capito che le due foto che faccio vedere per votare sono 2 foto prese a caso dal mio db (dove ce ne sono dentro centinaia) con la prima parte scelgo dal db quali prendere con la funzione random e poi con l'id generato con la suddetta funzione vado a prendere i dati che mi servono delle 2 foto pescate.re).

    Con la seconda parte che vi ho postato stampo a video i dati presi delle due foto e costruisco il pattern della get (che ovviamente cambia in base alla foto scelta). Quindi una volta controllo se mi sono stati passati i 2 valori ed eseguo l'aggiornamento del contatore. Poi eseguo la query update. Il problema grosso è ke i valori $count e $id a video sono giusti ( quando faccio gli echo) ma nel db il contatore torna a 1.

  10. #20
    per non parlare del fatto che se due utenti cliccano sulla foto più o meno insieme, uno dei due voti lo perdi
    E come posso fare per non perdere questo dato? Non è un problema di cui si deve occupare il DBMS? (è che sto seguendo un corso di Basi di dati in università e stiamo facendo le varie politiche delle transazioni che sono svolte in maniera concorrente, e, mi sembra, che questa cosa deve gestirsela lui) se sbaglio imploro perdono!

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2026 vBulletin Solutions, Inc. All rights reserved.