Visualizzazione dei risultati da 1 a 5 su 5
  1. #1

    Query per modificare solo determinati campi

    Ciao a tutti e' da un pezzo che non posto sul forum, avrei un problemino (per me un problemone...), partiamo dal'linizio:

    ho un DB con una tabella prodotti, in questa tabella vengono salvati oltre che ad altri campi anche i campi categoria e sotto_categoria, che sono anche quelli su cui mi soffermo e quelli che mi creano problemi.

    In pratica, devo fare in modo che se nella tabella prodotti i campi categoria e sotto_categoria sono uguali mi faccia una modifica in un modo, mentre, se sono differenti mi esegua un altro tipo di modifica.

    Sto provando con questo codice, ma mi da sempre lo stesso risultato sia che tenti di modificare e cioe' "modifica metodo 1"...

    Codice PHP:

    $query2 
    ="SELECT * FROM prodotti";  // eseguo la query
    $res2   mysql_query($query2) or die(mysql_error());
    $array2 mysql_fetch_assoc($res2);
                        
          if (
    $array2[categoria] == $array2[sotto_categoria]) {  // se categoria e' uguale a sotto_categoria
                            
                 
    echo "modifica metodo 1
    "
    ;
                            
          } else {  
    // se categoria e' diverso da sotto_categoria
                            
                 
    echo "modifica metodo 2
    "
    ;
                            
          } 
    Sto impazzendo, c'e' nessuno che mi puo' dare suggerimenti in proposito ?!?!

    Ciao ciao e grazie in anticipo a tutti.
    Micky

  2. #2

    Re: Query per modificare solo determinati campi

    [supersaibal]Originariamente inviato da _Micky_73
    Sto provando con questo codice, ma mi da sempre lo stesso risultato [/supersaibal]
    E' normale, visto che lo fai solo sul primo record

  3. #3
    E si hai ragione, cmq, ho provato anche con il while in questa maniera:

    Codice PHP:

    $query2 
    ="SELECT * FROM prodotti";  // eseguo la query
    $res2   mysql_query($query2) or die(mysql_error());
    while (
    $array2 mysql_fetch_assoc($res2)) {
                        
          if (
    $array2[categoria] == $array2[sotto_categoria]) {  // se categoria e' uguale a sotto_categoria
                            
                 
    echo "modifica metodo 1
    "
    ;
                            
          } else {  
    // se categoria e' diverso da sotto_categoria
                            
                 
    echo "modifica metodo 2
    "
    ;
                            
          }


    Ed il risultato (ovviamente) e' questo:

    modifica metodo 1
    modifica metodo 1
    modifica metodo 1
    modifica metodo 2
    modifica metodo 2

    Ed effettivamente riconosce i primi tre prodotti con categoria = sotto_categoria ma come faccio a farle modificare solo il record che interessa a me ??!

  4. #4
    Scusa, non puoi eseguire due query update di seguito? :master:

    La prima sarà qualcosa come
    UPDATE blabla SET bla bla bla WHERE(categoria = sotto_categoria);

    e l'altra:
    UPDATE blabla SET bla bla bla WHERE(categoria != sotto_categoria);

  5. #5
    Ho risolto, grazie 1000 le stesso, il tuo spunto iniziale mi e' stato molto utile !!!

    Grazie 1000 e ciao
    Micky

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