Visualizzazione dei risultati da 1 a 5 su 5

Discussione: [PHP]tipo serial

  1. #1
    Utente di HTML.it L'avatar di bonobo
    Registrato dal
    Sep 2008
    Messaggi
    103

    [PHP]tipo serial

    buonasera a tutti,
    ho dei problemi con il tipo di dato serial..

    allora
    ho la mia tabella cliente ad esempio con un campo id,di tipo seriale..
    facendo una semplicissima query come questa:

    SELECT id FROM cliente WHERE cliente.utente='antonio';

    in postgres mi da come risultato giustamente 1(perche l'id di antonio è 1)

    se eseguo quella query in php

    $sql = "SELECT id FROM cliente WHERE cliente.utente='".$utente."';";
    $query = pg_query($sql);

    naturalmente $utente è antonio...
    mi restituisce come risultato:

    Resource id #4

    perchèèè?come faccio da php ad ottenere 1(ovvero il vero valore di id associato ad "antonio") facendo quella query??


    seconda domanda:
    grazie al tipo serial ad ogni inserimento nella tabella cliente,quel campo viene incrementato di uno,ad ogni delete pero non viene decrementato quindi ad un successivo reinserimento ci sara un buco nei miei id...
    posso risolverla questa cosa...o no?
    in modo da avere sempre...1,2,3,4,5,6,7...anche dopo molte delete e successivi insert??


    grazie mille!!

  2. #2

    Re: [PHP]tipo serial

    Originariamente inviato da bonobo
    se eseguo quella query in php

    $sql = "SELECT id FROM cliente WHERE cliente.utente='".$utente."';";
    $query = pg_query($sql);

    naturalmente $utente è antonio...
    mi restituisce come risultato:

    Resource id #4

    perchèèè?come faccio da php ad ottenere 1(ovvero il vero valore di id associato ad "antonio") facendo quella query??
    Ti consiglio di iniziare leggendo il manuale ufficiale:

    http://www.php.net/pg_query (Example #1 pg_query() example)

    Originariamente inviato da bonobo
    grazie al tipo serial ad ogni inserimento nella tabella cliente,quel campo viene incrementato di uno,ad ogni delete pero non viene decrementato quindi ad un successivo reinserimento ci sara un buco nei miei id...
    posso risolverla questa cosa...o no?
    Non c'è nulla da risolvere, è il comportamento corretto.

  3. #3
    Utente di HTML.it L'avatar di bonobo
    Registrato dal
    Sep 2008
    Messaggi
    103

    Re: Re: [PHP]tipo serial

    Originariamente inviato da filippo.toso
    Ti consiglio di iniziare leggendo il manuale ufficiale:

    http://www.php.net/pg_query (Example #1 pg_query() example)



    Non c'è nulla da risolvere, è il comportamento corretto.

    ok è il comportamento corretto...lo posso cambiare??...

    sapevo gia il funzionamento della pg_query!ed avevo gia visto quegli esempi...quelli che capisco nn mi sn di aiuto....alcuni nn li capisco propio..
    vabbe grazie..

    chiedero a qualcun altro..

  4. #4

    Re: Re: Re: [PHP]tipo serial

    Originariamente inviato da bonobo
    ok è il comportamento corretto...lo posso cambiare??...
    No.

    Originariamente inviato da bonobo
    sapevo gia il funzionamento della pg_query!ed avevo gia visto quegli esempi...quelli che capisco nn mi sn di aiuto....alcuni nn li capisco propio..
    Che cosa non capisci dell'Example #1 pg_query() example?

    Come da manuale pg_query() restituisce una risorsa contenente il risultato della query oppure FALSE in caso di errore.
    Poi viene utilizzato pg_fetch_row() per estrarre i record dal risultato della query.

  5. #5
    Utente di HTML.it L'avatar di bonobo
    Registrato dal
    Sep 2008
    Messaggi
    103
    alèèè ci sono quasi....
    ho fatto un bel po di test e sono arrivato a questa conclusione...

    $sql = "SELECT cliente.id_c FROM cliente WHERE cliente.utente='".$utente."';";
    if(!$query = pg_query($sql)){
    die("Errore nella query 1: " . pg_last_error($conn));
    }
    else{
    $r = pg_fetch_row($query);
    $id=$r[0];
    $sql1 = "SELECT * FROM evento WHERE id_c='".$id."';";
    if(!$query1 = pg_query($sql1)){
    die("Errore nella query 2: " . pg_last_error($conn));
    }
    else{
    $e = pg_fetch_row($query1);
    $evento=$e[0];
    echo $evento;

    visto che della tabella evento voglio stampare tutto,adesso,il mio array $e avra tanti campi quante colonne della tabella giusto?
    se volessi stamparli tutti?..devo fare un controllo per vedere la lunghezza del array e stamparli cn un ciclo for?($e[0].$e[1]....$e[n])
    o c'è qualche altro metodo??

    grazie mille per le dritte,scusa la mia ignoranza...

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.