Pagina 1 di 4 1 2 3 ... ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 35
  1. #1

    Sessione ignorata nella query

    Buongiorno ragazzi,

    ho una maledetta query che mi ignora la session che è evidenziata in rosso:

    codice:
    rs.Source = "SELECT * FROM ads WHERE AD_POSTER IN (SELECT C_USERS FROM CAP WHERE C_CAP =  '" & session("mycap") & "'  OR C_CAP = '" & session("cap1") & "' OR C_CAP = '" & session("cap2") & "' OR C_CAP = '" & session("cap3") & "' OR C_CAP = '" & session("cap4") & "' OR C_CAP = '" & session("cap5") & "' OR C_CAP = '" & session("cap6") & "' OR C_CAP = '" & session("cap7") & "' OR C_CAP = '" & session("cap8") & "' OR C_CAP = ' " & session("cap9") & "' OR C_CAP = '" & session("cap10") & "' AND ABILITATO = '1' AND AD_EXPIRED >= date() AND AD_TYPE = '" & session("iType")   &  "' ORDER BY C_USERS ASC)"
    questa session è un numero a due cifra che si trova nella tabella ADS e identifica la categoria.
    Problema: perchè la query ignora questo parametro? Forse la subquery va chiusa prima?
    La sessione esiste la visualizzo con response.write(rs.source)

    :master:

    Thanks
    Pochi sanno, molti presumono di sapere.

  2. #2
    Utente di HTML.it L'avatar di diegoctn
    Registrato dal
    May 2001
    Messaggi
    2,118
    E si che devi chiudere la subquery.....

  3. #3
    Si ma dove ... ho provato a mettere una parentesi prima del primo AND ma (dove in teoria dovrebbe stare), ma no va..

    Mi indicheresticortesemente la modifica?
    Grazie
    Pochi sanno, molti presumono di sapere.

  4. #4
    la parentesi di chiusura la devi SPOSTARE. quindi la metti dove va messa, e la togli da dove sta adesso.

  5. #5
    Utente di HTML.it L'avatar di diegoctn
    Registrato dal
    May 2001
    Messaggi
    2,118
    Fai un resposende.write della session ed uno della query e postalo. Perchè non va? Ti da valore nulla, si blocca......cosa?

  6. #6
    Così:

    codice:
    rs.Source = "SELECT * FROM ads WHERE AD_POSTER IN (SELECT C_USERS FROM CAP WHERE C_CAP =  '" & session("mycap") & "'  OR C_CAP = '" & session("cap1") & "' OR C_CAP = '" & session("cap2") & "' OR C_CAP = '" & session("cap3") & "' OR C_CAP = '" & session("cap4") & "' OR C_CAP = '" & session("cap5") & "' OR C_CAP = '" & session("cap6") & "' OR C_CAP = '" & session("cap7") & "' OR C_CAP = '" & session("cap8") & "' OR C_CAP = ' " & session("cap9") & "' OR C_CAP = '" & session("cap10") & "' )  AND ABILITATO = 1 AND AD_EXPIRED >= date() AND AD_TYPE = '" & session("iType") &  "' ORDER BY C_USERS ASC"
    e mi dice ..

    Nessun valore specificato per alcuni parametri necessari.

    ... un bell'aiuto!
    Pochi sanno, molti presumono di sapere.

  7. #7
    Originariamente inviato da Rob2002
    Così:

    codice:
    rs.Source = "SELECT * FROM ads WHERE AD_POSTER IN (SELECT C_USERS FROM CAP WHERE C_CAP =  '" & session("mycap") & "'  OR C_CAP = '" & session("cap1") & "' OR C_CAP = '" & session("cap2") & "' OR C_CAP = '" & session("cap3") & "' OR C_CAP = '" & session("cap4") & "' OR C_CAP = '" & session("cap5") & "' OR C_CAP = '" & session("cap6") & "' OR C_CAP = '" & session("cap7") & "' OR C_CAP = '" & session("cap8") & "' OR C_CAP = ' " & session("cap9") & "' OR C_CAP = '" & session("cap10") & "' )  AND ABILITATO = 1 AND AD_EXPIRED >= date() AND AD_TYPE = '" & session("iType") &  "' ORDER BY C_USERS ASC"
    e mi dice ..

    Nessun valore specificato per alcuni parametri necessari.

    ... un bell'aiuto!
    un bell'aiuto in che senso?

    e comunque, fa' così

    codice:
    Dim sSQL
    
    sSQL = "... quello che adesso scrivi in rs.source..."
    Response.Write "
     Carissimi, eccomi....: " & sSQL
    Response.Flush
    
    rs.source = sSQL
    ...
    e posta quello che hai a video

  8. #8
    questa è la query a video:

    codice:
    SELECT * FROM ads WHERE AD_POSTER IN (SELECT C_USERS FROM CAP WHERE C_CAP = '67039' OR C_CAP = '67038' OR C_CAP = '67037' OR C_CAP = '67036' OR C_CAP = '67035' OR C_CAP = '67034' OR C_CAP = '67040' OR C_CAP = '67040' OR C_CAP = '67041' OR C_CAP = ' 67043' OR C_CAP = '67044' ) AND ABILITATO = 1 AND AD_EXPIRED >= date() AND AD_TYPE = '36' ORDER BY C_USERS ASC
    ... ma la parentesi di chiusura va bene lì?
    Pochi sanno, molti presumono di sapere.

  9. #9
    Utente di HTML.it L'avatar di diegoctn
    Registrato dal
    May 2001
    Messaggi
    2,118
    Originariamente inviato da Rob2002
    ... un bell'aiuto!


  10. #10
    i campi

    ABILITATO
    AD_EXPIRED
    AD_TYPE

    fanno parte della tabella ADS (quella della query principale)
    o della tabella CAP (quella della subquery)?

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.