Visualizzazione risultati 1 fino 14 di 14

Discussione: [PHP/MySQL] mysql_close e fine()...problema!

  1. #1
    Guest

    Post [PHP/MySQL] mysql_close e fine()...problema!

    Ciao a tutti, io sto facendo un sito (che presto pubblicherò)..ma ho qst problema:
    Ho 2 pagine...index.php dove c'è solamente qst codice:
    Codice PHP:
    <?php

    include("config.php");
    myheader();


    echo
    "<h2>Ultime News</h2>";

    $newsq = mysql_query("SELECT * FROM news");

    while(
    $news = mysql_fetch_array($newsq)) {

    echo
    "<b>$news[titolo]</b> - $news[data]<br />\n
    $news[testo]<br />";

    }

    myfooter();
    fine();
    ?>
    e config.php dove c'è qst pezzo che da problemi:
    Codice PHP:
    function fine() { mysql_close($db); }
    Io ho creato la funzione fine()...con mysql_close($db); ...$db è la variabile che contiene mysql_connect..ecc...invece in ogni pagina di mettere mysql_close($db); metto solamente fine();...ma non funziona da qst errore:
    Notice: Undefined variable: db in config.php on line 6

    Warning: mysql_close(): supplied argument is not a valid MySQL-Link resource in config.php on line 6
    Leggendo noterete nel primo errore che dice che non trova la variabile $db...ma io l'ho messa...(non è dentro nessuna funzione)...
    Grazie 1000...ciao Davide!

  2. #2
    Guest

    Predefinito

    Dov'è che fai la connessione?
    Sempre dentro config.php?
    All'interno della funzione fine, prima di tutto, dovresti inserire:

    global $db;


    Ciao!

  3. #3
    Guest

    Predefinito

    Ok..il problema del mysql_close è risolto..
    ho aggiunto global $db; prima di mysql_close..adesso nel menù mi dice qst:
    Notice: Undefined variable: pg in config.php on line 79

    Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in config.php on line 79
    Io il menu l'ho messo dentro myfooter..perchè così nelle pagine basta che metto <h2> per il titolo e risolvo il tutto..e ho messo qst:
    Codice PHP:
    echo "<h2>HomePage</h2>
    <ul class=\"menublock\">
    <li><a href=\"index.php\">&raquo; Ultime News</a></li>
    <li><a href=\"index.php?p=archivionews\">&raquo; Archivio News</a></li>
    </ul>

    <h2>Tutorial</h2>
    <ul class=\"menublock\">"
    ;
    $pq = mysql_query("SELECT * FROM tut_cat");
    while(
    $p = mysql_fetch_array($pg)) {
    echo
    "<li><a href=\"tutorial.php?catid=$p[id]\">&raquo; Sezione $p[nome]</a></li>";
    }
    echo
    "</ul>
    </div>

    <div id=\"footer\"><p>&copy; 2008 DavideWeb.Tutti i diritti Riservati.</p></div>
    </div>
    Cosa sbaglio? (il codice è dentro config.php)..
    Grazie 1000...ciao Davide! ^^

  4. #4
    Guest

    Predefinito

    Una volta usi $pq e un'altra $pg


    Ciao!

  5. #5
    Guest

    Predefinito

    O-O-O-O...ps, cmq Grazie 1000..adesso ho un altro problema (sono andato mooolto avanti, il sito è finito ma l'area admin deve ancora incominciare :()...bene ecco il mio problema..mi da qst errore:
    Parse error: parse error, unexpected $end in admin.php on line 85
    Cosa vuol dire??
    Codice PHP:
    <?php

    include("config.php");
    myheader();

    if(
    session_is_registered("username") && session_is_registered("password") && session_is_registered("ruolo")) {
    $userq = mysql_query("SELECT * FROM staff WHERE username = '$_SESSION[username]'");
    $user = mysql_fetch_array($userq);

    $passq = mysql_query("SELECT * FROM staff WHERE username = '$_SESSION[password]'");
    $pass = mysql_fetch_array($passq);

    $ruoloq = mysql_query("SELECT * FROM staff WHERE username = '$_SESSION[ruolo]'");
    $ruolo = mysql_fetch_array($ruoloq);
    if(
    $_SESSION['username'] == $user['username'] && $_SESSION['password'] == $user['password'] && $_SESSION['ruolo'] == $user['ruolo']) {
    $_SESSION['username'] = $user_sex;
    $_SESSION['password'] = $pass_sex;
    $_SESSION['ruolo'] = $ruolo_sex;
    /*==================================================================================================================================================================================*/








    /*==================================================================================================================================================================================*/
    } else {
    echo
    "<h2><img src=\"http://forum.it.altervista.org/images/theme/errore.png\" /> Area Staff &raquo; Errore</h2>";
    echo
    "<b>I dati di Login sono Errati!...</b>";
    }

    if(isset(
    $_POST['login'])) {

    $username = $_POST['username'];
    $password = $_POST['password'];

    if(
    $username == "" OR $password == "") {
    echo
    "<h2><img src=\"http://forum.it.altervista.org/images/theme/errore.png\" /> Area Staff &raquo; Errore</h2>";
    echo
    "<b>Ci sono dei campi vuoti...</b>";
    } else {

    $userq = mysql_query("SELECT * FROM staff WHERE username = '$username'");
    $user = mysql_fetch_array($userq);

    $passq = mysql_query("SELECT * FROM staff WHERE username = '$password'");
    $pass = mysql_fetch_array($passq);

    if(
    $username == $user['username'] && $password == $pass['password']) {

    $_SESSION['username'] = $username;
    $_SESSION['password'] = $password;
    $_SESSION['ruolo'] = $username['ruolo'];

    session_register("username");
    session_register("password");
    session_register("ruolo");

    if(
    session_is_registered("username") && session_is_registered("password") && session_is_registered("ruolo")) {
    echo
    "<b>Sessioni Registrate!</b> $_SESSION[username] - $_SESSION[password] - $_SESSION[ruolo]";
    } else {
    echo
    "<h2><img src=\"http://forum.it.altervista.org/images/theme/errore.png\" /> Area Staff &raquo; Errore</h2>";
    echo
    "<b>Ci sono degli errori nella Sessione!...</b>";
    }
    } else {
    echo
    "<h2><img src=\"http://forum.it.altervista.org/images/theme/errore.png\" /> Area Staff &raquo; Errore</h2>";
    echo
    "<b>I dati inseriti, sono Errati!...</b>";
    }
    }
    } else {
    echo
    "<h2><img src=\"http://forum.it.altervista.org/images/theme/admin.png\" /> Area Staff</h2>";
    echo
    "<form method=\"POST\">
    <i>Username</i>:<br />
    <input type=\"text\" name=\"username\" id=\"input\" value=\"\" style=\"background: url(images/theme/admin-username.png) no-repeat 2px 2px ; padding: 0 0px 4px 24px;\"; /><br /><br />
    <i>Password</i>:<br />
    <input type=\"password\" name=\"password\" id=\"input\" value=\"\" style=\"background: url(images/theme/admin-password.png) no-repeat 2px 2px ; padding: 0 0px 4px 24px;\"; /><br /><br />
    <input type=\"submit\" id=\"button\" name=\"login\" value=\"Verifica i Dati\" />"
    ;
    }


    myfooter();
    fine();

    ?>
    La pagina si chiama admin.php..credo che il codice spieghi tutto quello che voglio fare..
    Line 85: ?> (Ultima)
    Grazie 1000...ciao Davide! ^^

  6. #6
    Guest

    Predefinito

    Quando ti indica una riga non propriamente significativa, come in questo caso, vuol dire che hai sbagliato qualche chiusura / apertura delle graffe.


    Ciao!

  7. #7
    Guest

    Predefinito

    Debug...6 fantastiko! Grazie!..
    Ma ora mi logga, sono che da quel che ho capito non mi memorizza la sessione nella variabile :(
    Notice: Undefined variable: user_sex in admin.php on line 30

    Notice: Undefined variable: pass_sex in admin.php on line 30

    Notice: Undefined variable: ruolo_sex in admin.php on line 30
    Codice PHP (admin.php)
    Codice PHP:
    <?php

    include("config.php");
    myheader();
    session_start();

    if(
    session_is_registered("username") && session_is_registered("password") && session_is_registered("ruolo")) {
    $userq = mysql_query("SELECT * FROM staff WHERE username = '$_SESSION[username]'");
    $user = mysql_fetch_array($userq);

    $passq = mysql_query("SELECT * FROM staff WHERE username = '$_SESSION[password]'");
    $pass = mysql_fetch_array($passq);

    $ruoloq = mysql_query("SELECT ruolo FROM staff WHERE username = '$_SESSION[username]'");
    $ruolo = mysql_fetch_array($ruoloq);
    if(
    $_SESSION['username'] == $user['username'] && $_SESSION['password'] == $user['password'] && $_SESSION['ruolo'] == $ruolo['0']) {
    $_SESSION['username'] = $user_sex;
    $_SESSION['password'] = $pass_sex;
    $_SESSION['ruolo'] = $ruolo_sex;
    /*==================================================================================================================================================================================*/
    $get = $_GET['p'];
    if(isset(
    $get)) {



    if(
    $get == "indice") {

    echo
    "<h2>Login Fatto!</h2>";

    echo
    "$user_sex - $pass_sex - $ruolo_sex";
    } else {
    echo
    "<b>P</b>";
    }
    }



    /*==================================================================================================================================================================================*/
    } else {
    echo
    "<h2><img src=\"images/theme/errore.png\" /> Area Staff &raquo; Errore</h2>";
    echo
    "<b>I dati di Login sono Errati!...</b>";
    }
    }

    if(isset(
    $_POST['login'])) {

    $username = $_POST['username'];
    $password = $_POST['password'];

    if(
    $username == "" OR $password == "") {
    echo
    "<h2><img src=\"images/theme/errore.png\" /> Area Staff &raquo; Errore</h2>";
    echo
    "<b>Ci sono dei campi vuoti...</b>";
    } else {

    $userq = mysql_query("SELECT * FROM staff WHERE username = '$username'");
    $user = mysql_fetch_array($userq);

    $passq = mysql_query("SELECT * FROM staff WHERE password = '$password'");
    $pass = mysql_fetch_array($passq);

    if(
    $username == $user['username'] && $password == $pass['password']) {

    $ruoloq = mysql_query("SELECT ruolo FROM staff WHERE username = '$username'");
    $ruolo = mysql_fetch_array($ruoloq);

    $_SESSION['username'] = $username;
    $_SESSION['password'] = $password;
    $_SESSION['ruolo'] = $ruolo['0'];

    session_register("username");
    session_register("password");
    session_register("ruolo");

    if(
    session_is_registered("username") && session_is_registered("password") && session_is_registered("ruolo")) {
    header("Location: admin.php?p=indice");
    } else {
    echo
    "<h2><img src=\"images/theme/errore.png\" /> Area Staff &raquo; Errore</h2>";
    echo
    "<b>Ci sono degli errori nella Sessione!...</b>";
    }
    } else {
    echo
    "<h2><img src=\"images/theme/errore.png\" /> Area Staff &raquo; Errore</h2>";
    echo
    "<b>I dati inseriti, sono Errati!...</b>";
    }
    }
    } else {
    echo
    "<h2><img src=\"images/theme/admin.png\" /> Area Staff</h2>";
    echo
    "<form method=\"POST\">
    <i>Username</i>:<br />
    <input type=\"text\" name=\"username\" id=\"input\" value=\"\" style=\"background: url(images/theme/admin-username.png) no-repeat 2px 2px ; padding: 0 0px 4px 24px;\"; /><br /><br />
    <i>Password</i>:<br />
    <input type=\"password\" name=\"password\" id=\"input\" value=\"\" style=\"background: url(images/theme/admin-password.png) no-repeat 2px 2px ; padding: 0 0px 4px 24px;\"; /><br /><br />
    <input type=\"submit\" id=\"button\" name=\"login\" value=\"Verifica i Dati\" />"
    ;
    }


    myfooter();
    fine();

    ?>
    Linea 30:
    Codice PHP:
    echo "$user_sex - $pass_sex - $ruolo_sex";
    Volevo verificare, cosa metteva dentro le sessioni! :(
    Grazie 1000...ciao Davide! ^^

  8. #8
    Guest

    Predefinito

    Quelle variabili non le valorizzi.
    Devi invertire queste assegnazioni:

    $_SESSION['username'] = $user_sex;
    $_SESSION['password'] = $pass_sex;
    $_SESSION['ruolo'] = $ruolo_sex;


    Ciao!

  9. #9
    Guest

    Predefinito

    ecco l'errore:
    Codice PHP:
    $_SESSION['username'] = $user_sex;
    $_SESSION['password'] = $pass_sex;
    $_SESSION['ruolo'] = $ruolo_sex;
    così memorizzi nella sessione la variabile e non il contrario dovresti fare:
    Codice PHP:
    $user_sex = $_SESSION['username'];
    $pass_sex = $_SESSION['password'];
    $ruolo_sex = $_SESSION['ruolo'];
    ciao

  10. #10
    Guest

    Predefinito

    Grazie 1000 debug...solo che ho dei problemi! :(
    Allora mi dice qst:
    Parse error: parse error, unexpected T_IF, expecting T_CASE or T_DEFAULT or '}' in admin.php on line 10
    admin.php (ri-modificato)
    Codice PHP:
    <?php

    include("config.php");
    myheader();
    session_start();

    $get = $_GET['p'];

    switch(
    $get) {
    if(
    session_is_registered("username") && session_is_registered("password") && session_is_registered("ruolo")) {

    case
    "indice":
    echo
    "<h2>Login Fatto!</h2>";

    echo
    "$user_sex - $pass_sex - $ruolo_sex";
    break;

    }
    }

    if(
    session_is_registered("username") && session_is_registered("password") && session_is_registered("ruolo")) {
    $userq = mysql_query("SELECT * FROM staff WHERE username = '$_SESSION[username]'");
    $user = mysql_fetch_array($userq);

    $passq = mysql_query("SELECT * FROM staff WHERE username = '$_SESSION[password]'");
    $pass = mysql_fetch_array($passq);

    $ruoloq = mysql_query("SELECT ruolo FROM staff WHERE username = '$_SESSION[username]'");
    $ruolo = mysql_fetch_array($ruoloq);
    if(
    $_SESSION['username'] == $user['username'] && $_SESSION['password'] == $user['password'] && $_SESSION['ruolo'] == $ruolo['0']) {
    $user_sex = $_SESSION['username'];
    $pass_sex = $_SESSION['password'];
    $ruolo_sex = $_SESSION['ruolo'];
    /*==================================================================================================================================================================================*/

    /*==================================================================================================================================================================================*/
    } else {
    echo
    "<h2><img src=\"images/theme/errore.png\" /> Area Staff &raquo; Errore</h2>";
    echo
    "<b>I dati di Login sono Errati!...</b>";
    }
    }
    if(
    session_is_registered("username") && session_is_registered("password") && session_is_registered("ruolo")) {
    header("Location: admin.php?p=indice");
    } else {
    if(isset(
    $_POST['login'])) {

    $username = $_POST['username'];
    $password = $_POST['password'];

    if(
    $username == "" OR $password == "") {
    echo
    "<h2><img src=\"images/theme/errore.png\" /> Area Staff &raquo; Errore</h2>";
    echo
    "<b>Ci sono dei campi vuoti...</b>";
    } else {

    $userq = mysql_query("SELECT * FROM staff WHERE username = '$username'");
    $user = mysql_fetch_array($userq);

    $passq = mysql_query("SELECT * FROM staff WHERE password = '$password'");
    $pass = mysql_fetch_array($passq);

    if(
    $username == $user['username'] && $password == $pass['password']) {

    $ruoloq = mysql_query("SELECT ruolo FROM staff WHERE username = '$username'");
    $ruolo = mysql_fetch_array($ruoloq);

    $_SESSION['username'] = $username;
    $_SESSION['password'] = $password;
    $_SESSION['ruolo'] = $ruolo['0'];

    session_register("username");
    session_register("password");
    session_register("ruolo");

    if(
    session_is_registered("username") && session_is_registered("password") && session_is_registered("ruolo")) {
    header("Location: admin.php?p=indice");
    } else {
    echo
    "<h2><img src=\"images/theme/errore.png\" /> Area Staff &raquo; Errore</h2>";
    echo
    "<b>Ci sono degli errori nella Sessione!...</b>";
    }
    } else {
    echo
    "<h2><img src=\"images/theme/errore.png\" /> Area Staff &raquo; Errore</h2>";
    echo
    "<b>I dati inseriti, sono Errati!...</b>";
    }
    }
    } else {
    echo
    "<h2><img src=\"images/theme/admin.png\" /> Area Staff</h2>";
    echo
    "<form method=\"POST\">
    <i>Username</i>:<br />
    <input type=\"text\" name=\"username\" id=\"input\" value=\"\" style=\"background: url(images/theme/admin-username.png) no-repeat 2px 2px ; padding: 0 0px 4px 24px;\"; /><br /><br />
    <i>Password</i>:<br />
    <input type=\"password\" name=\"password\" id=\"input\" value=\"\" style=\"background: url(images/theme/admin-password.png) no-repeat 2px 2px ; padding: 0 0px 4px 24px;\"; /><br /><br />
    <input type=\"submit\" id=\"button\" name=\"login\" value=\"Verifica i Dati\" />"
    ;
    }
    }


    myfooter();
    fine();

    ?>
    Linea 10:
    Codice PHP:
    if(session_is_registered("username") && session_is_registered("password") && session_is_registered("ruolo")) {
    Ora..io voglio che quando il login sia corretto (user e pass), vengano registrate le sessioni e si faccia un redirect su uno switch (?p=) che in questo caso è indice (una specie di HomePage)...infatti dentro questo switch per visualizzare la pagina, bisogna avere le sessioni registrate!!!
    Perchè non funziona? :'(
    Grazie 1000...ciao Davide! ^^

  11. #11
    Guest

    Predefinito

    All'interno dello switch non puoi metterci altro che case o default e la sintassi prevista.


    Ciao!

  12. #12
    Guest

    Predefinito

    Grazie Debug..adesso non ho un errore..ma mi capita una cosa strana...:
    Io sto provando ad aggiungere un "articolo"..ma adesso questo mi dice (quando lo invio) che i campi sono vuoti..ma io li riempo!
    Ad esempio ho provato a cambiare l'echo...(il testo che dice che ci sono campi vuoti) e mettere una lettera a caso..ma questo non cambia..il testo rimane uguale...perchè?
    Cosa sbaglio? (Uso firefox 3.0.1)
    Codice PHP:
    if(isset($_POST['invia'])) {

    $testo = $_POST['testo'];
    $titolo = $_POST['titolo'];
    $cat = $_POST['cat'];

    if(
    $testo == "" OR $titolo == "") {
    echo
    "<h2><img src=\"images/theme/errore.png\" /> Area Staff &raquo; Errore</h2>";
    echo
    "<b>Ci sono Campi Vuoti!...</b>";
    } else {
    echo
    "<h2><img src=\"images/theme/staff-login.png\" /> Area Staff &raquo; Nuovo Articolo</h2>\n";
    $autore = $user_sex;
    $data = date("d/m/Y");
    $ora = date("H.i");

    $testo = testo("$testo");
    $testo = str_replace('\"','\"',$testo);

    $querys = mysql_query("INSERT INTO tut_articoli (id,cat,titolo,testo,autore,data,ora) VALUES ('','$cat','$titolo','$testo','$autore','$data','$ora'");
    if(
    $querys) {
    echo
    "<h2><img src=\"images/theme/ok.png\" /> Area Staff &raquo; Articolo Inserito</h2>";
    echo
    "<b>".testo("L'")."articolo ".testo("è")." stato inserito con successo!...</b><br /><a href=\"tutorial.php?artid=".mysql_insert_id()."\">Visualizza <b>$titolo</b></a>";
    } else {
    echo
    "<h2><img src=\"images/theme/errore.png\" /> Area Staff &raquo; Errore</h2>";
    echo
    "<b>Ci sono Campi Vuoti!...</b>";
    }

    }
    } else {
    echo
    "<h2><img src=\"images/theme/staff-login.png\" /> Area Staff &raquo; Nuovo Articolo</h2>\n";
    echo
    "<script type=\"text/javascript\">
    window.onload = function(){
    var oFCKeditor = new FCKeditor( 'testo' ) ;
    oFCKeditor.BasePath = 'fckeditor/' ;
    oFCKeditor.Width = '100%' ;
    oFCKeditor.Height = '400px' ;
    oFCKeditor.ReplaceTextarea() ;
    }
    </script>
    <script type=\"text/javascript\" src=\"fckeditor/fckeditor.js\"></script>"
    ;

    echo
    "<form method=\"POST\">
    <i>Titolo</i>:<br /><input type=\"text\" name=\"titolo\" id=\"input\" size=\"77\" value=\"\" /><br /><br />"
    ;
    echo
    "<i>Categoria</i>: <select name=\"cat\">";
    $catq = mysql_query("SELECT * FROM tut_cat");
    while(
    $cat = mysql_fetch_array($catq)) {
    echo
    "<option value=\"$cat[id]\">$cat[titolo]</option>";
    }
    echo
    "</select><br /><br />";
    echo
    "<i>Testo</i>:<br /><textarea name=\"testo\" class=\"FCKeditor1\"></textarea><br /><br />
    <input type=\"submit\" name=\"invia\" value=\"Invia Articolo\" id=\"button\" />
    </form>"
    ;
    }
    Grazie 1000...ciao Davide! ^^

  13. #13
    Guest

    Predefinito

    domanda cretina, mi i campi di invio hanno l'attributo name? e poi l'attributo rispecchia esattamente qll nelle vriabili post?
    e poi i campi sono tutti in un form unico vero?

  14. #14
    Guest

    Predefinito

    Risposta cretina, mi sono fatto anche io qst domande..ma hanno tutte le risposte OK! (nel senso positivo)...e qnd..perchè non funziona ancora?
    Ciao! ^^

Regole di scrittura

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