Pagina 1 di 3 1 2 3 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 22
  1. #1
    Utente di HTML.it
    Registrato dal
    Feb 2014
    Messaggi
    58

    Aggiornare campo in base a timestamp meno recente

    Ecco il mio script che sto cercando di realizzare:
    Codice PHP:
    $dbname 'db_cart'

    $sql "SHOW TABLES FROM $dbname LIKE '%id_%' "$result mysql_query($sql); 
    if (!
    $result) {     echo "DB Error, could not list tables\n";     echo 'MySQL Error: ' mysql_error();     exit; } 
    while (
    $row mysql_fetch_row($result)) {     $tables="{$row[0]}";      

    mysql_free_result($result); 
    $books mysql_query("SELECT isbn FROM books WHERE quantita > '0' ") or die(mysql_error());      // scorro con un array la query e quindi i vari campi delle varie tabelle while($rowbooks = mysql_fetch_array($books)) 
    {     extract($rowbooks);               mysql_query ("UPDATE $tables SET disponibile = '1' WHERE isbn = '$isbn' ORDER BY timestamp ASC ") or die(mysql_error());     mysql_query ("UPDATE books SET quantita = quantita-1 WHERE isbn = '$isbn'") or die(mysql_error()); } } 
    aggiornare il campo disponibile a "1" in tutti i record con timestamp piu vecchio presenti delle varie tabelle che iniziano per "id_"

  2. #2
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,505
    Prima di tutto ti chiedo una cosa, quando posti del codice, prima di inviare il messaggio visualizza l'anteprima, in modo da assicurarti che il codice venga ben indentato e che i ritorni a capo siano giusti, in caso contrario riformattalo.

    Attualmente che problema riscontri? Hai detto solo cosa vuoi fare, ma non che problema hai.

  3. #3
    Utente di HTML.it
    Registrato dal
    Feb 2014
    Messaggi
    58
    Mi scuso per gli errori commessi nel postare! Allora mi spego meglio! Ho n tabelle che sono chiamate con id_x dove x è un numero! Io vorrei far in modo che devo aggiornare il campo disponibile di tutte le tabelle che hanno il relativo timestamp di quel record meno recente fra tutte le tabelle!

  4. #4
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,505
    Quello che vuoi fare è chiaro, ma tu che problemi hai attualmente con quel codice?
    Non sai che query eseguire? In tal caso devi chiedere nella sezione Database, perché se sai come si eseguono le query con PHP, allora PHP non è il tuo problema, ma lo è SQL.

  5. #5
    Utente di HTML.it
    Registrato dal
    Feb 2014
    Messaggi
    58
    Be io ho il mio problema quando devo riuscire a sapere quale record ha il campo timestamp meno recente fra tutti i record dele tabelle id_x. Se la sezione è sbagluata ti chiedo gentilmente di spostarmi la discussione grazie!

  6. #6
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,505
    Suppongo si possa fare con una query UPDATE con una clausola WHERE ben impostata.
    Ti sposto.

  7. #7
    Utente di HTML.it
    Registrato dal
    Feb 2014
    Messaggi
    58
    Grazie!

    Ragionando credo che dovrei fare un select per avere tutti record di tutte le tabelle id_x che hanno timestamp meno recente! Poi un update del campo disponibile a 1 con clausola where dove quantita è maggiore di zero!
    Ecco ora vorrei una mano a questo script! Grazie
    Ultima modifica di snakom23; 07-07-2014 a 12:38

  8. #8
    Utente di HTML.it
    Registrato dal
    Feb 2014
    Messaggi
    58
    Sto impazzendo non riesco ad uscirne! Vorrei fare in modo di aggiornare un campo di una tabella che ha fra tutte le tabelle il campo timestamp piu vecchio! Ecco ho ridotto all'osso il problema!! Helpppp pls!

  9. #9
    fa' un esempio, cercando di essere il più chiaro possibile, grazie

  10. #10
    Utente di HTML.it
    Registrato dal
    Feb 2014
    Messaggi
    58
    ho le seguenti tabelli
    id_1
    id_2
    id_3
    id_4
    id_5
    e cosi via....
    queste tabelle non saranno mai un numero finito.

    Ogni tabella ha gli stessi campi e sono i seguenti:

    | id | isbn | disponibile | timestamp |
    ------------------------------------
    id: primaria ed auto incrementale
    isbn: varchar
    disponibile: o assume valore '0' o assume valore '1'
    timestamp: timestamp update on current


    Io devo aggiornare il campo disponibile ad '1' secondo il timestamp piu vecchio COMPLESSIVO fra tutte le tabelle esistenti.

    Spero di esser stato chiarissimo! Non saro mai grato se mi riesci a risolvere questo grosso mio problema! Grazie !

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 © 2025 vBulletin Solutions, Inc. All rights reserved.