Visualizzazione dei risultati da 1 a 10 su 10
  1. #1
    Utente di HTML.it
    Registrato dal
    Jun 2011
    Messaggi
    202

    domanda su Update dei dati

    Ho una tabella dove ogni record è identificato da un codice univoco in auto_incremento, ora se voglio modificarlo...ho fatto prima una ricerca sul codice paziente che potrebbe ripresentarsi + di 1 volta....e poi visualizzato tutti i record disponibili, inoltre i dati modificabili sono solo alcuni e vengono visualizzati solo quelli.

    Ora per modificare faccio inserire all'utente il codice che si incrementa in automatico, e lo invio ad un nuovo script....insieme a questo codice vorrei far inviare i dati da modificare...ma siccome sono circa 6 campi, e l'utente può modificarne uno come 6....come posso fare per fare l'update dei dati nella query ? se il dato risulta vuoto viene cmq sovrascritto a quello esistente giusto?

  2. #2
    Utente di HTML.it
    Registrato dal
    Apr 2004
    Messaggi
    3,709
    No... quando crei la stringa della query controlli i dati... se sono "vuoti" non li aggiorni.

  3. #3
    Utente di HTML.it
    Registrato dal
    Jun 2011
    Messaggi
    202
    si può inserire l'IF quindi direttamente nella clausolo SET?

  4. #4
    puoi usare if $stringa='';

    oppure if(strlen($stringa)<1)

    i modi ci sono

  5. #5
    Utente di HTML.it
    Registrato dal
    Jun 2011
    Messaggi
    202
    si ma tutto questo stiamo parlando sempre nel

    UPDATE .... SET (IF strlen($stringa)<1) campo=$stringa

    ????

  6. #6
    Originariamente inviato da neidus
    si ma tutto questo stiamo parlando sempre nel

    UPDATE .... SET (IF strlen($stringa)<1) campo=$stringa

    ????

    presumo che tu imposti prima la stringa da inserire nella querystring.. quindi dovresti avere una cosa del genere:

    Codice PHP:

    $stringa
    =$_POST['stringa'];

    if(
    strlen($stringa)>1)   //in questo modo stai controllando se la stringa contiene almeno un carattere, quindi non è vuota, puoi cmq alzare questo valore

    {
           
    $querystring="UPDATE nometabella SET stringa='".$stringa."' WHERE blabla..";
    }

    else

    {
        
    //rediretti e dai l'errore
     

    spero di essere stato chiaro..

  7. #7
    Utente di HTML.it
    Registrato dal
    Jun 2011
    Messaggi
    202
    si ma io ho 6 stringhe che possono essere mandate in update devo ripetere la stringa di update e l'if per ogni stringa a questo punto giusto???

  8. #8
    se di norma fai 6 query di update diverse fra loro SI.

    se fai una query unica utilizzando le 6 stringhe basta che fai

    Codice PHP:
    if(strlen($stringa1)>&& strlen($stringa2)>&& strlen($stringa3)>.... 
    le metti tutte e hai risolto! in questo modo lui procede SE E SOLO SE tutte e 6 le stringhe contengono ALMENO 1 carattere..

  9. #9
    Utente di HTML.it
    Registrato dal
    Jun 2011
    Messaggi
    202
    penso che farò 6 stringhe diverse ....perchè l'utente può modificare sia tutte e 6 le stringhe sia 1 sola.....sia 2...vabbhè c siamo capiti

    come l'avevo pensato insomma....speravo ci fosse un modo + veloce XD

    grazie cmq x le risposte

  10. #10
    Utente di HTML.it
    Registrato dal
    Apr 2004
    Messaggi
    3,709
    Codice PHP:
    $query "UPDATE nometabella ";
    if (
    $campo1!=''$query .= "SET campo1='$campo1', ";
    if (
    $campo2!=''$query .= "SET campo2='$campo2', ";
    // ... etc. ...
    if (substr($query, -2)==', '$query substr($query0, -2); // (*) 
    ovviamente dovresti fare un controllo sui valori (escaping) e altro...

    (*) questa tecnica (qui adattata) la uso spesso quando ho delle concatenazioni... (C)by me :)

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.