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

    [PHP] Verificare presenza di un dato nel db

    Ciao a tutti,
    sto facendo l'inserimento di un file excel nel mio db. L'inserimento funziona correttamente, e a questo punto vorrei implementare un controllo. Nel mio file excel esiste un codice alfanumerico del tipo 34401600, io voglio vedere se questo codice è già presente e nel caso non lo sia lo inserisco. Nel caso fosse già presente eseguo delle query e confronto gli altri dati presenti nella stessa riga del file excel con quelli presenti nel db e associati al codice che sto leggendo, se anche uno solo è diverso devo fare l'inserimento del dato, altrimenti tengo quello che ho.
    Avevo pensato di vAlutare la presenza con un comando tipo

    $verifica = "SELECT * FROM trasporto WHERE Id LIKE $identificatore";
    if(mysql_query($verifica, $connessione))

    Non sembra che la funzione mysql_query restituisca un boolean, e questo mi trova un po spiazzato...
    ...c'è qualcuno che ha una soluzione??
    Grazie

  2. #2
    la select va bene

    ci calcoli il result e una row=fetch_array

    poi vai a controllare row['codice']
    http://www.trustweb.it - Web Development - Design 2D/3D - SEO & SEM

    Twitter http://twitter.com/#!/TrustWeb
    LinkedIn http://it.linkedin.com/in/trustweb

  3. #3
    non ho capito bene che db usi ma in teoria il fetch_row se non trova corrispondenze in una select ritorna false

    edit: ho visto ora che usi mySql, meglio allora vado sul sicuro, mysql_fetch_row se non trova righe corrispondenti ritorna false
    Ubuntu rulez!! :P

  4. #4
    Grazie mille...
    ...ora provo!!!!

  5. #5
    Ma una cosa di questo tipo è corretta:

    $verifica = "SELECT * FROM trasporto WHERE Id = $Identificatore"
    $res = mysql_query($verifica, $connessione);
    if($row = mysql_fetch_row($res)){
    se entro dentro l'if il dato non era presente
    }
    else{
    se entro nell'else il dato era presente
    }

    ?

    Perchè non sembra funzionarmi...e non capisco se l'errore è all'ingresso del ciclo, o se è sbagliato quello che poi ho implementato dentro all' if{}else{}

  6. #6
    Grazieeeee...
    ...ci sono riuscito!!!

  7. #7
    Utente di HTML.it L'avatar di dottwatson
    Registrato dal
    Feb 2007
    Messaggi
    3,012
    piu elegantemente usare mysql_num_rows() che ti restituisce il numero di record per la select

    Codice PHP:
    if(mysql_num_rows($query) == 0){
    //inserisci il nuovo record

    Non sempre essere l'ultimo è un male... almeno non devi guardarti le spalle

    il mio profilo su PHPClasses e il mio blog laboweb

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.