Visualizzazione risultati 1 fino 5 di 5

Discussione: Collegare script php con database altervista

  1. #1
    Guest

    Exclamation Collegare script php con database altervista

    Buonasera!
    Fino a pochi giorni fa ho portato avanti un progetto scolastico in locale, usando software come apache, ma adesso ho la necessità di caricare sulla rete questo progetto.
    Praticamente non riesco a collegare il mio script php al database che ho caricato su altervista, non capisco il perché considerando che tutt'ora questo script in locale funziona.

    Sì, ho attivato il database su altervista:


    Lo script dovrebbe interagire con il database per controllare se i dati inseriti dall'utente esistano o meno, una sorta di login insomma.

    Ecco il codice php:
    Codice PHP:
    <?php
    session_start
    ();
    $risposta=$HTTP_POST_VARS['risp1'];
    $mail=$HTTP_POST_VARS['mail'];
    $psw1=$HTTP_POST_VARS['psw1'];
    $_SESSION['mail']=$mail;
    $_SESSION['psw1']=$psw1;
    $connessione=mysql_connect("localhost"," ", " ");
    if(
    $risposta=="")
    {
    echo
    "Non hai selezionato nessuna opzione";
    }
    if(!
    $connessione)
    {
    echo
    "Connessione non riuscita!";
    }
    else
    {
    $db=mysql_select_db("my_impegnipascal",$connessione);
    if(!
    $db)
    {
    echo
    "Connessione al database fallita!";
    }
    if(
    $risposta=='insegnante')
    {
    $funzione="Select accinsegnanti.idinsegnanti, accinsegnanti.psw From accinsegnanti";
    $query=mysql_query($funzione);
    if(!
    $query)
    {
    //echo "Qui ci sta un errore!";
    include "loginerrore.html";
    }
    else
    {
    $array=mysql_fetch_array($query);
    $emailcontrollo=$array['idinsegnanti'];
    $pswcontrollo=$array['psw'];
    if(
    $emailcontrollo==$mail && $pswcontrollo==$psw1)
    {
    include
    "insegnante/logindoneinsegnante.html";
    }
    else
    {
    include
    "loginerrore.html";
    }
    }
    La pagina html in cui ci sono i form dove inserisco i dati è: www.impegnipascal.altervista.org

    Vi ringrazio in anticipo per il vostro aiuto! :D

  2. #2
    L'avatar di alemoppo
    alemoppo non è connesso Staff AV
    Data registrazione
    24-08-2008
    Residenza
    PU / BO
    Messaggi
    22,685

    Predefinito

    Non hai inserito le credenziali di accesso che sono presenti nell'immagine che hai postato tu stesso.
    Inoltre occhio che stai usando le vecchie funzioni mysql. Dovresti usare mysqli o pdo.

    Ciao!

  3. #3
    Guest

    Predefinito

    Grazie per la risposta!
    Ho provato a inserire anche l'username ma nulla, il problema è:
    Nella home page l'utente deve selezionare la modalità di utente con cui vuole accedere:


    E questo è il codice:
    Codice:
    <h3>Tipo utente:
    	<br>
    	Studente
    	<input type="radio" name="risp1" value="studente">
    	Insegnante
    	<input type="radio" name="risp1" value="insegnante">
    	Genitore
    	<input type="radio" name="risp1" value="genitore">
    	<br></h3>
    Poi questa informazione insieme alla mail e alla password vengono passate alla pagina php che dovrebbe verificare l'esistenza dei dati:

    Codice PHP:
    <?php
    session_start
    ();
    $risposta=$HTTP_POST_VARS['risp1'];
    $mail=$HTTP_POST_VARS['mail'];
    $psw1=$HTTP_POST_VARS['psw1'];
    $_SESSION['mail']=$mail;
    $_SESSION['psw1']=$psw1;
    $DBServer = 'localhost';
    $DBUser = 'impegnipascal';
    $DBPass = 'DB_PASSWORD';
    $DBName = 'my_impegnipascal';
    $mysqli = new mysqli($DBServer, $DBUser, $DBPass, $DBName);
    if(
    mysqli_connect_errno())
    {
    echo
    "Errore connessione al DB: ".mysqli_connect_error();
    }
    else
    {
    if(
    $risposta==NULL)
    {
    echo
    "Non hai selezionato nessuna opzione";
    }

    if(
    $risposta=="insegnante")
    {
    $funzione="Select accinsegnanti.idinsegnanti, accinsegnanti.psw From accinsegnanti";
    $query=mysql_query($funzione);
    if(!
    $query)
    {
    //echo "Qui ci sta un errore!";
    include "loginerrore.html";
    }
    else
    {
    $array=mysql_fetch_array($query);
    $emailcontrollo=$array['idinsegnanti'];
    $pswcontrollo=$array['psw'];
    if(
    $emailcontrollo==$mail && $pswcontrollo==$psw1)
    {
    include
    "insegnante/logindoneinsegnante.html";
    }
    else
    {
    include
    "loginerrore.html";
    }
    }
    }
    Il problema è che lo script si ferma al primo IF e mi comunica il messaggio "Non hai selezionato nessuna opzione" anche se l'ho selezionata precedentemente.

    Allora sono arrivato alla conclusione che c'è un problema nella connessione al database.. Sto impazzendo sono tre giorni che provo a risolvere, ma nulla da fare.

    Un'altra informazione, che succede se continuo a programmare con MySQL anziché MySQLi?

    Grazie mille per l'aiuto!

  4. #4
    Guest

    Predefinito

    Al posto di HTTP_POST_VAR usa $_POST, per cui, ad esempio, questo

    Codice PHP:
    $risposta=$HTTP_POST_VARS['risp1'];
    diventa

    Codice PHP:
    $risposta=$_POST['risp1'];
    In merito alle funzioni MYSQL_ sono state deprecate con le nuove versioni quindi, visto che stai iniziando, perchè non usare le nuove funzioni. Per adesso, comunque, continuano a funzionare, ma in un prossimo futuro saranno abbandonate e quindi non funzioneranno più.
    Le funzioni mysqli in più, oltre all'approccio procedurale, ti danno la possibilità di un approccio ad oggetti, in modo da usare stili più moderni e funzionali.

  5. #5
    Guest

    Predefinito

    Citazione Originalmente inviato da vplaza Visualizza messaggio
    Al posto di HTTP_POST_VAR usa $_POST, per cui, ad esempio, questo

    Codice PHP:
    $risposta=$HTTP_POST_VARS['risp1'];
    diventa

    Codice PHP:
    $risposta=$_POST['risp1'];
    In merito alle funzioni MYSQL_ sono state deprecate con le nuove versioni quindi, visto che stai iniziando, perchè non usare le nuove funzioni. Per adesso, comunque, continuano a funzionare, ma in un prossimo futuro saranno abbandonate e quindi non funzioneranno più.
    Le funzioni mysqli in più, oltre all'approccio procedurale, ti danno la possibilità di un approccio ad oggetti, in modo da usare stili più moderni e funzionali.
    Grazie al tuo aiuto sono riuscito a risolvere il mio problema, grazie mille!

Regole di scrittura

  • Non puoi creare nuove discussioni
  • Non puoi rispondere ai messaggi
  • Non puoi inserire allegati.
  • Non puoi modificare i tuoi messaggi
  •