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

    help errore query e mssql

    Salve a tutti,ho un piccolo problema che mi sta facendo sbattere la testa da parecchi giorni,e cioè,ho il seguente codice php

    include('../db.php');
    session_start();
    if (isset($HTTP_POST_VARS["usr"])){
    $user=$HTTP_POST_VARS["usr"];
    $pass=$HTTP_POST_VARS["pwd"];

    $qry=mssql_query("SELECT * FROM utenti WHERE user = '$user'") or die ("Query Fallita");


    if ($row=mssql_fetch_array($qry)){
    if ($row['accfaill']<="5"){
    if($row['password']==$pass){
    $qry=mssql_query("UPDATE utenti Set accfaill = '0' where user='$user'") or die ("Query Fallita");

    $_SESSION['user']=$user;
    $_SESSION['password']=$pass;
    $_SESSION['id']=$row['id'];


    }else{
    $qry=mssql_query("UPDATE utenti Set accfaill = accfaill + 1 where user='$user'") or die ("Query Fallita");
    $_SESSION['msg']="Login Errato!";

    }
    }else{$_SESSION['msg']="L'account potrebbe essere bloccato,contattare l'aministratore!";
    }
    }else{$_SESSION['msg']= "Login Errato!";

    }
    }
    inserito in una pagina chiamata login.php,quando io gli invio i dati col metodo post lei li riceve e dovrebbe elaborarli,ma invece non fa nulla e mi restituisce subito il msg che io gl'ho impostato e cioè
    }else{$_SESSION['msg']= "Login Errato!";
    secondo me non riesce a filtrare i dati nel database sql tramite la query
    $qry=mssql_query("SELECT * FROM utenti WHERE user = '$user'") or die ("Query Fallita");


    if ($row=mssql_fetch_array($qry)){
    per voi che può essere?io ho provato a togliere where (si no restituisce i dati)però funziona.

    Scusate se sono stato poco chiaro

    grazie anticipatamente

  2. #2
    Utente di HTML.it
    Registrato dal
    Mar 2004
    Messaggi
    1,141
    Al posto di $HTTP_POST_VARS usa $_POST guarda il link:
    http://it2.php.net/variables.predefined

    Poi,hai controllato che effettivamente vengano passati i dati alla pagina?
    Ossia,se fai
    Codice PHP:
    include('../db.php');
    session_start();
    if (isset(
    $_POST["usr"])){
    $user=$_POST["usr"];
    $pass=$_POST["pwd"];

    echo 
    "User : ".$user." pass: ".$pass
    Ti stampa qualcosa a video??

    Se i dati vengono passati correttamente, prova a stampare la query, e provarla direttamente, magari c'è qualcosa che non va...
    Codice PHP:
     $qry=mssql_query("SELECT * FROM utenti WHERE user = '$user'") or die ("Query Fallita"); 
    echo 
    "SELECT * FROM utenti WHERE user = '$user'"
    sxo di esserti stato d'aiuto.
    ciao

  3. #3
    si i dati vengono ricevuti ma dalle prove che ho fatto con where non riesce a filtrare nulla in effetti mi da errore!!!perchè?

  4. #4
    Utente di HTML.it
    Registrato dal
    Mar 2004
    Messaggi
    1,141
    intendi dire che se fai
    Codice PHP:
    echo "SELECT * FROM utenti WHERE user = '$user'"
    a video ti esce una cosa del genere?
    codice:
    SELECT * FROM utenti WHERE user = ''
    oppure ti stampa
    codice:
    SELECT * FROM utenti WHERE user = 'pippo'
    però eseguendola non ricevi alcun risultato?

  5. #5
    Originariamente inviato da ken84
    intendi dire che se fai
    Codice PHP:
    echo "SELECT * FROM utenti WHERE user = '$user'"
    a video ti esce una cosa del genere?
    codice:
    SELECT * FROM utenti WHERE user = ''
    oppure ti stampa
    codice:
    SELECT * FROM utenti WHERE user = 'pippo'
    però eseguendola non ricevi alcun risultato?
    facendo postare a schermo la query mi viene restituito
    codice:
    SELECT * FROM utenti WHERE user = 'pippo'
    io pensavo che magari l'mssql non supporta lo stesso comando where del mysql è possibile?

  6. #6
    Utente di HTML.it
    Registrato dal
    Mar 2004
    Messaggi
    1,141
    Penso di no, sinceramente non l'ho mai usato, però guardando il link:
    http://it2.php.net/manual/it/function.mssql-query.php

    nel primo esempio viene utilizzato un where, quindi non penso sia quello il problema.

    Penso che tu abbia un tool (tipo phpmyadmin) o comunque un 'ambiente' dove puoi provare direttamente le query senza interagire con php...
    Se provi lì la query, ti restituisce qualche errore? se sì,quale?

  7. #7
    Utente di HTML.it
    Registrato dal
    Oct 2004
    Messaggi
    102
    Originariamente inviato da ken84
    intendi dire che se fai
    Codice PHP:
    echo "SELECT * FROM utenti WHERE user = '$user'"
    Ciao dexterman - ho lo stesso problema ed ho verificato che è proprio la sintassi della select che
    crea problemi.

    Infatti anche scrivendo semplicemente :
    Codice PHP:
    " SELECT * FROM mia_tabella " 
    viene riportato l'errore di esecuzione query.
    Alla fine cos'hai scoperto? ciao

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.