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

    [query] problema con limit

    ho questa query

    select * from immagini where (ordine_imm_id < '".$array_su['ordine_imm_id']."') and imm_id_anno='".$_REQUEST['anno']."' order by ordine_imm_id desc limit 1

    perchè se la stampo con un echo è corretta mentre il database anzichè prendere il primo valore più basso di $array_su['ordine_imm_id'] mi prende il secondo?????

    ho provato a mettere un valore manuale al posto di $array_su['ordine_imm_id'] per esempio 12,
    tutto ok mentre con $array_su['ordine_imm_id'] non va???

    è un problema di sintassi di database?

  2. #2
    scusa, ma è una cifra ordine_imm_id?
    Se si, perché gli metti gli apici? '".$array_su['ordine_imm_id']."'

  3. #3
    si è una cifra,
    fatto così ma niente

    $array_su[ordine_imm_id]

    non riesco a capire dovè il problema?

  4. #4
    order by ordine_imm_id desc

    perche' ordini a partire dal maggiore. Se vuoi il primo valore piu' basso devi usare ASC e non DESC

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

  5. #5
    mi continua a saltare il primo valore .....

  6. #6
    perché se metti limit 1 è equivalente a scrivere LIMIT 1,1 cioè prendi un elemento a partire dall'indice 1 ( indovina a che posizione si riferisce?)

    Devi usare LIMIT 0,1

  7. #7
    Originariamente inviato da artorius
    perché se metti limit 1 è equivalente a scrivere LIMIT 1,1 cioè prendi un elemento a partire dall'indice 1 ( indovina a che posizione si riferisce?)

    Devi usare LIMIT 0,1


    Ne sei proprio certo su "limit 1" ?

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

  8. #8
    Originariamente inviato da roberto1982
    mi continua a saltare il primo valore .....
    posta lo script che usi per estrarre il valore. Ma prima, hai provato a sostituire DESC con ASC

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

  9. #9
    Originariamente inviato da piero.mac

    Ne sei proprio certo su "limit 1" ?
    mmm mi sa che hai ragione... LIMIT 1 = LIMIT 0,1...

    @roberto1982
    C'è poco da fare, se non mette il result che dici tu ci sono 3 possibilità:
    1. l'ordinamento non è corretto
    2. Il valore che ti aspetti è fuori dai risultati filtrati dal WHERE
    3. Il valore che ti aspetti non è nella tabella

    Mi sembra di capire che la 1 la controllata, rimangono le altre due.

  10. #10
    Codice PHP:
    $su=mysql_query("select * from immagini where imm_id='$id'");
    $array_su=mysql_fetch_array($su);
    $cerca_su=mysql_query("select * from immagini where (ordine_imm_id < '$array_su[ordine_imm_id]') and imm_id_anno='".$_REQUEST['anno']."' order by ordine_imm_id desc limit 1");
    $array_cerca_su=mysql_fetch_array($cerca_su);
    mysql_query("update immagini set ordine_imm_id='$array_cerca_su[ordine_imm_id]' where imm_id='$array_su[imm_id]'"); 
    ho provato a stampare anche la query con update e a video tutto ok ma il database sempre il solito problema mi salta il primo valore!


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.