• User

    trova l'orrore, php & mysql

    Salve, ho provato a fare una serie di script in php che si collegano ad un server mysql per fare svariate operazioni, ma dopo un attenta analisi ho deciso di racchiudere quelle 4 5 istruzioni che collegano lo script al DB in un file a parte, per poi richiarmarlo con un include() nello script che mi interessa.
    Questo è il codice che uso nella pagina php che elabore il login

    
    <?php
    session_start();
    
    //echo $_SESSION['id_pg'];
    
    if(isset($_SESSION['id_pg']))
        header("Location: sessionescaduta.html");
    
    if(isset($_POST['nomepg']) && isset($_POST['password']))
    {
        if(loginCorretto())
            Header("Location: ../php5/gioco.php");
    }
    
    echo "Hai sbagliato ad inserire i dati, riprova il <A HREF='login.html'>Login</A>";
    ?>
    
    <?php
    
    function loginCorretto()
    {
            $result=false;
    
            $account = $_POST['nomepg'];
        $password = $_POST['password'];
    
           include("../php5/init/connettiAlDb.php?ok=ok");
    
            $str_query = "UPDATE `personaggio` SET `Location_Attuale` = 'Pagina Iniziale' WHERE `personaggio`.`Nome` =".$account." AND `personaggio`.`Password`=".$password.";
    
            if(mysql_query($str_query)) $result=true;
    
        mysql_close($conn_srv);
    
        return $result;
    }
    
    ?>
    ```mentre questo è il codice che risiede in "connettiAlDb.php"
    
    

    <?php
    if($_GET['ok'] != "ok")
    {echo "Pagina di servizio, non puoi visualizzarla previa autorizazzione";exit;}

    $host = 'localhost';
    $user = 'user';
    $pws = 'pass';
    
    $conn_srv =  mysql_connect($host,$user,$pws,true) or die (mysql_error());
    
    $db_name = 'my_latorredigiada';
    
    $conn_db =  mysql_select_db($db_name,$conn_srv) or die (mysql_error());
    

    ?>

    
    

    Parse error: syntax error, unexpected $end in /membri/latorredigiada/php5/pagineaccesso/home.php on line 48


  • User

    Chi mi aiuta cortesemente a capire cosa c'è che non va?..o.ò

    Per piacere..>.<


  • User Attivo

    Beh innanzitutto la funzione login corretto dovresti portarla in alto, altrimenti non la trova

    [php]
    <?php

    function loginCorretto()
    {
    $result=false;

        $account = $_POST['nomepg'];
    $password = $_POST['password'];
    
       include("../php5/init/connettiAlDb.php?ok=ok");
    
        $str_query = "UPDATE `personaggio` SET `Location_Attuale` = 'Pagina Iniziale' WHERE `personaggio`.`Nome` =".$account." AND `personaggio`.`Password`=".$password.";
    
        if(mysql_query($str_query)) $result=true;
    
    mysql_close($conn_srv);
    
    return $result;
    

    }
    ?>
    <?php
    session_start();

    //echo $_SESSION['id_pg'];

    if(isset($_SESSION['id_pg']))
    header("Location: sessionescaduta.html");

    if(isset($_POST['nomepg']) && isset($_POST['password']))
    {
    if(loginCorretto())
    Header("Location: ../php5/gioco.php");
    }

    echo "Hai sbagliato ad inserire i dati, riprova il <A HREF='login.html'>Login</A>";
    ?>

    [/php]codice connetialdb

    [php]<?php
    $host = 'localhost';
    $user = 'user';
    $pws = 'pass';
    $db_name = 'my_latorredigiada';
    $conn_srv = mysql_connect($host,$user,$pws) or die (mysql_error());

    $conn_db =  mysql_select_db($db_name,$conn_srv) or die (mysql_error());
    

    ?>[/php]


  • User

    Mi dispiace ma è ancora peggio di prima, da ancora più errori, comunque prina di fare quell'include fa sempre funzionato lo script, non penso proprio si quello.

    Ps: grazie dell'aiuto lo stesso..=)


  • User Attivo

    [php]
    <?php
    if($_GET['ok'] != "ok")
    {
    echo "Pagina di servizio, non puoi visualizzarla previa autorizazzione";
    }
    else
    {
    $host = 'localhost';
    $user = 'user';
    $pws = 'pass';
    $db_name = 'my_latorredigiada';
    $conn_srv = mysql_connect($host,$user,$pws) or die (mysql_error());
    $conn_db = mysql_select_db($db_name,$conn_srv) or die (mysql_error());
    }
    ?>
    [/php]Prova cosi...


  • User

    Non funziona...

    Ho provato a usare questo archibugio anche in altre pagine (tipo la registrazione) e li da altri problemi ancora, credo che semplicemente non usero questo espediente, non è assolutamente l'implementazione migliore ma cercherò di migliorarla quando avrò sviluppato altre parti del sito.

    Grazie mille a chi ha interagito, anche solo per aver letto!..;)


  • User Attivo

    Allora l'errore di $end è perchè ti sei perso qualche } di chiusura... controlla bene... poi in serata dò un occhio al resto...

    keiske


  • User Attivo

    [php]<?php

    session_start();

    function loginCorretto()
    {
    $result=false;

        $account = $_POST['nomepg'];
    $password = $_POST['password'];
    
       include("../php5/init/connettiAlDb.php?ok=ok");
    
        $str_query = "UPDATE `personaggio` SET `Location_Attuale` = 'Pagina Iniziale' WHERE `personaggio`.`Nome` =".$account." AND `personaggio`.`Password`=".$password;
    
        if(mysql_query($str_query)) $result=true;
    
    mysql_close($conn_srv);
    
    return($result);
    

    }

    if(isset($_SESSION['id_pg']))
    header("Location: sessionescaduta.html");

    if(isset($_POST['nomepg']) && isset($_POST['password']))
    {
    if(loginCorretto())
    Header("Location: ../php5/gioco.php");
    }

    echo "Hai sbagliato ad inserire i dati, riprova il <A HREF='login.html'>Login</A>";
    ?>[/php]

    Codice conneti al db

    [PHP]
    <?php
    $host = 'localhost';
    $user = 'user';
    $pws = 'pass';
    $db_name = 'my_latorredigiada';
    $conn_srv = mysql_connect($host,$user,$pws) or die (mysql_error());

    $conn_db =  mysql_select_db($db_name,$conn_srv) or die (mysql_error());
    

    ?>[/PHP]

    :gthi:


  • User

    🙂

    Grazie mille a tutti quelli che mi hanno aiutato!

    Dico davvero, io ci avevo ormai rinunciato ma ora funziona..

    Siete davvero un ottimo stuff!

    :rollo: