Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 11
  1. #1

    query con risultato singolo

    Se faccio una select, di cui sono sicuro dell'unicità del risultato, come posso portarlo direttamente in una variabile senza fare tutte le menate che faccio di solito???
    Io finora ho sempre fatto così:

    codice:
    $sql="SELECT nomecampo FROM nomedb WHERE id=1";
    $dati=mysql_query($sql);
    $array=mysql_fetch_array($dati);
    $variabile=$array[nomecampo]
    Sicuramente funge, ma mi sembra un po' macchinosa come cosa...
    Pensavo ad un'alternativa a fetch_array, ma cercando non sono riuscito a trovare nulla.
    Probabilmente è una domanda scema...ma tant'è....siate clementi.

    CIAU!

  2. #2
    Utente di HTML.it L'avatar di gianiaz
    Registrato dal
    May 2001
    Messaggi
    8,027
    http://fr.php.net/manual/it/function.mysql-result.php

    guarda il primo esempio nei commenti.

    ciao

  3. #3
    Potresti usare mysql_result, ma e' meno performante nel complesso e poi non c'e' piu' in mysqli, se dovessi in seguito migrare lo script devi rivederti tutto.


    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

  4. #4

  5. #5
    Originariamente inviato da gianiaz
    http://fr.php.net/manual/it/function.mysql-result.php

    guarda il primo esempio nei commenti.

    ciao
    Gia' nel primo esempio che citi si perde in performance rispetto a mysql_fetch_*

    Devi fare tre chiamate .... una per campo, invece di una chiamata per tupla. pensa se fosse una sola riga di 10 campi ... sarebbero 10 connessioni al result set.

    Va bene solo se devi leggere un solo campo. Meglio mysql_fetch_*



    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

  6. #6
    Va bene solo se devi leggere un solo campo. Meglio mysql_fetch_*


    Infatti il caso è questo, grazie delle dritte, nel caso avessi più campi continuo ad usare l'array!

  7. #7
    Utente di HTML.it L'avatar di gianiaz
    Registrato dal
    May 2001
    Messaggi
    8,027
    Originariamente inviato da piero.mac
    Gia' nel primo esempio che citi si perde in performance rispetto a mysql_fetch_*

    Devi fare tre chiamate .... una per campo, invece di una chiamata per tupla. pensa se fosse una sola riga di 10 campi ... sarebbero 10 connessioni al result set.

    Va bene solo se devi leggere un solo campo. Meglio mysql_fetch_*


    in effetti il primo esempio da quel punto di vista non ha senso, ma nel caso in questione si applica.

    comunque grazie per la precisazione, le estensioni mysqli non le ho ancora guardate e non sapevo che mysql_result fosse stato tolto.

    ciao

  8. #8
    Come vuoi... ma il fatto che la funzione non abbia vita lunga in php dovrebbe farti riflettere sul futuro del tuo script.



    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

  9. #9
    Utente di HTML.it L'avatar di gianiaz
    Registrato dal
    May 2001
    Messaggi
    8,027
    Originariamente inviato da piero.mac
    Come vuoi... ma il fatto che la funzione non abbia vita lunga in php dovrebbe farti riflettere sul futuro del tuo script.


    guarda che ti ho dato ragione.

  10. #10
    Originariamente inviato da gianiaz
    guarda che ti ho dato ragione.
    Non dicevo a te ovviamente. Abbiamo risposto insieme.

    Scrivere codice che non ha ancora piena compatibilita' (futurista) oppure ormai sulla via della obsolescenza non e' tra le mie aspirazioni. In entrambi i casi si rischia di dover rimediare a breve a queste genialate.

    Ma non avendo nient'altro da fare.... perche' no?



    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

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.