Visualizzazione dei risultati da 1 a 9 su 9

Discussione: Problemi con UNSET

  1. #1
    Utente di HTML.it
    Registrato dal
    Jul 2008
    Messaggi
    13

    Problemi con UNSET

    Ciao a tutti,

    Ho un quesito che non riesco a risolvere.
    Ho effettuato i seguenti passaggi.
    1) Update di un valore contenuto in una tabella,
    2) Select della tabella aggiornata,
    3) mi stampa il valore contenuto nell'array non aggiornato mentre nel database effettua l'aggiornamento,
    4)Ho fatto un "UNSET" e le prime celle dell'array sono vuote, e mi fa slittare il contenuto aggiornatato nelle successive celle.

    Siccome ho bisogno di un array con alla prima cella il valore aggiornato e così via. Come posso risolvere questo problema?

    :master:

    Grazie a tutti.

  2. #2

  3. #3
    Utente di HTML.it
    Registrato dal
    Jul 2008
    Messaggi
    13
    Codice PHP:
     $stmt="update $ms_database.ricl00db set
                   
                    
                    ricloreresidue='
    $ore_residue'
                    
                    
                    
                    
                    where 
    $ms_database.ricl00db.riclcodancl='$codcliente_qry'
                    and 
    $ms_database.ricl00db.riclcod='$A_riclcod[$j]'
                        "
    ;
                        
        print
    "$stmt
    "
    ;                
            
    $result mysql_query($stmt);


    for (
    $i=0$i<=$n_ricarica$i++)
      {
      unset(
    $A_riclcodancl[$i],$A_riclcod[$i],$A_ricldata[$i],$A_ricldescrizione[$i],$A_riclimporto[$i],$A_riclnumero_ore[$i],$A_ricloreresidue[$i]); 
      }


    $stmt="select ricl00db.riclcod,
                    ricl00db.ricldata,
                    ricl00db.ricldescrizione,
                    ricl00db.riclimporto,
                    ricl00db.riclnumero_ore,
                    ricl00db.ricloreresidue
                    
                    
                    from 
    $ms_database.ricl00db
                    
                    where 
    $ms_database.ricl00db.riclcodancl='$codcliente_qry'
                    
                        "
    ;
                    
    print
    $stmt
    "
    ;

        
    $n_ricarica=-1;
        
      
    // Esegue la query e ritorna il risultato in $result
      
    $result mysql_query($stmt);
      
    // Controlla il risultato
      
    if ($result)
      {
         
    // Risultato OK
         // print"<h1>ACCEDERE AD INTEBASE CON PHP</h1>

    ";
         while (list(
    $riclcod,
                     
    $ricldata,
                     
    $ricldescrizione,
                     
    $riclimporto,
                     
    $riclnumero_ore,
                     
    $ricloreresidue
                     
                     )=mysql_fetch_row(
    $result))
         {

         // METTO TUTTE LE NEWS IN SPECIFICI ARRAY .
            
            
    $A_riclcod[]=$riclcod;
            
    $A_ricldata[]=$ricldata;
            
    $A_ricldescrizione[]=$ricldescrizione;
            
    $A_riclimporto[]=$riclimporto;
            
    $A_riclnumero_ore[]=$riclnumero_ore;
            
    $A_ricloreresidue[]=$ricloreresidue;
            
                    
                    
    $n_ricarica++;
         }
         mysql_free_result(
    $result);
      }
      else
      {
         print "
    ERRORE!
    ";
         print 
    $stmt;
      } 
    Se faccio stampare $A_ricloreresidue mi stampa il vecchio contenuto e non considera l'aggiornamento. Ho provato ad utilizzare, dopo l'update, un "UNSET" mi fa slittare il contenuto dell'array nelle posizioni successive. Il risultato che sto cercando è quello ti poter avere nell'array i valori aggiornati a partire dalla prima cella.

    E' un programma gestionale che deve, tra le altre cose, effettuare lo storno delle ore lavorate, ma dopo aver effettuato lo storno(cioè sommato le ore a quelle residue), non mi stampa l'array con i valori aggiornati. L'operazione di aggiornamento viene fatta correttamente a livello di Tabelle, quindi di database.

    Grazie per tutto l'aiuto che mi saprete dare.

  4. #4
    Se, subito dopo la query di UPDATE, esegui questo codice, cosa ottieni?

    Codice PHP:
    var_dump($result);
    die(
    mysql_error()); 

  5. #5
    Utente di HTML.it
    Registrato dal
    Jul 2008
    Messaggi
    13
    Ciao,

    Grazie di aver risposto. Ho provato a fare come mi hai scritto, ma mi dà il seguente risultato:

    "bool(true)". Poi non esegue la Select e di conseguenza non stampa a video i valori contenuti nella tabella.

    Ho provata a vedere sul manuale la funzione e dall'esempio che riporta, sembrerebbe fare al caso mio. Ma non riesco a risolvere questo problema.

    Mi potresti spiegare il ragionamento che hai fatto?

    Grazie.

  6. #6
    Se, subito dopo la query di UPDATE, esegui questo codice, cosa ottieni?

    Codice PHP:
    var_dump(mysql_affected_rows($result));
    die(); 

  7. #7
    Utente di HTML.it
    Registrato dal
    Jul 2008
    Messaggi
    13
    Ho provato e mi ha dato come risultato:

    Warning: mysql_affected_rows(): supplied argument is not a valid MySQL-Link resource in D:\xampp\htdocs\portale\salva_modifica_intervento. php on line 360
    bool(false)

  8. #8
    Scusa, piccolo errore, prova con:

    Codice PHP:
    var_dump(mysql_affected_rows());
    die(); 

  9. #9
    Utente di HTML.it
    Registrato dal
    Jul 2008
    Messaggi
    13
    Risultato:

    int(1)

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.