Pagina 1 di 3 1 2 3 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 21

Discussione: Undefined variable

  1. #1

    Undefined variable

    Salve ragazzi questo è l'errore che mi dà cosa significa!!

    <?
    ob_start();
    include("config.inc.PHP");
    include("selezione.inc.PHP");
    include("ricerca.php");


    $val=ricerca(profilo,$select,lgin,$log,pass,$passw d,abilitato);



    Questo è un pezzo do codice!!!


    Ecco gli errori:
    Notice: Undefined variable: select in c:\programmi\easyphp1-8\www\videoteca\controlla.php on line 7

    Notice: Undefined variable: log in c:\programmi\easyphp1-8\www\videoteca\controlla.php on line 7

    Notice: Undefined variable: passwd in c:\programmi\easyphp1-8\www\videoteca\controlla.php on line 7

    Notice: Undefined variable: select in c:\programmi\easyphp1-8\www\videoteca\controlla.php on line 8

    Notice: Undefined variable: log in c:\programmi\easyphp1-8\www\videoteca\controlla.php on line 8

    Notice: Undefined variable: passwd in c:\programmi\easyphp1-8\www\videoteca\controlla.php on line 8
    Roberto Dungino

  2. #2
    Utente di HTML.it L'avatar di luke83
    Registrato dal
    Jul 2000
    Messaggi
    1,217
    ke quelle variabili nn sono definite.. puoi definirle ad inizio pagina così:

    Codice PHP:
    $profilo=$log=$passwd=""
    Codice PHP:
    poi ti consiglerei di richiamare così la funzione..
     
    $val=ricerca('profilo',$select,'lgin',$log,'p
    ass'
    ,$passwd,'abilitato'); 
    sempre se nn ti servivano come costanti..

    ..::Luca::..
    » "se nn riesci a venirene a capo.. usa il tasto INVIO" © 2005 Luke83
    » "letta la documentazione, spazio all'immaginazione.." © 2006 Luke83
    [frasi random] - [Lucopedia] - [laFetta]

  3. #3
    le variabili in questione sono in un altro file e rappresentano i dati passati tramite un form. Ho provato a fare come hai detto tu ma i dati passati vengono annullati. C'è un'altra soluzione.
    Roberto Dungino

  4. #4
    Utente di HTML.it L'avatar di luke83
    Registrato dal
    Jul 2000
    Messaggi
    1,217
    Originariamente inviato da luke83
    ke quelle variabili nn sono definite.. puoi definirle ad inizio pagina così:
    devi metterle subito dopo l'ob_start()
    il fatto che nn vengano popolate anke se metti lì la loro dichiarazione è indice del fatto che nn siano popolate dalla form.. puoi fare così allora... per ogni vaiabile.. questa volta subito prima della funzione..

    Codice PHP:
    $var = (isset($_POST['var']))?$_POST['var']:'valora_di_Default'
    questo lo fai per ogni variabile che devi usare e facendo attenzione al metodo usato post->$_POST, get->$_GET

    la prossima volta magari posta tutto il codice.. nn limitarti alle tre righe attorno all'errore.. che ne so che fanno quei file? posso solo immaginarlo..magari potrebbe esserci una soluzione migliore ma così posso passarti solo quella tampone...
    ..::Luca::..
    » "se nn riesci a venirene a capo.. usa il tasto INVIO" © 2005 Luke83
    » "letta la documentazione, spazio all'immaginazione.." © 2006 Luke83
    [frasi random] - [Lucopedia] - [laFetta]

  5. #5
    Questo è il file controlla.php

    <?
    ob_start();
    include("config.inc.PHP");
    include("selezione.inc.PHP");
    include("ricerca.php");


    $val=ricerca('profilo',$select,'lgin',$log,'pass', $passwd,'abilitato');
    switch($val){
    case -2:
    echo "utente non registrato";
    break;
    case -1:
    echo"utente registrato ma non abilitato";
    break;

    case 0:
    session_start();
    $logged=0;
    session_register("logged");
    header("Location: http://localhost/videoteca/admin.php");
    break;
    case 1:
    session_start();
    $logged=1;
    session_register("logged");
    header("Location: http://localhost/videoteca/clienti/clienti.php");
    break;
    case 2:
    session_start();
    $logged=2;
    session_register("logged");
    header("Location: http://localhost/videoteca/tesserati/tesserati.php");
    break;
    }
    ?>


    <html>
    <head>
    <title>Documento senza titolo</title>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
    </head>

    <body>

    </body>
    </html>

    file ricerca.PHP
    <?
    function ricerca($arg,$chiave,$arg2,$chiave2,$arg3,$chiave3 ){
    $dati=mysql_query("SELECT * FROM autenticazione WHERE $arg='$chiave'AND $arg2='$chiave2' AND $arg3='$chiave3'");
    $num_righe=mysql_num_rows($dati);
    if(!$num_righe){
    return -2;
    }

    $array=mysql_fetch_array($dati);
    $abil=$array['abilitato'];
    if($abil==1){
    return $chiave;
    }
    else{
    return -1;
    }


    }
    ?>

    file index.PHP
    <html>
    <head>
    <title>Documento senza titolo</title>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
    <link href="stile.css" rel="stylesheet" type="text/css">
    </head>


    <?
    $select=$log=$passwd="";
    ?>
    <body>
    <div align="center">
    <table width="75%" border="0">
    <tr>
    <td colspan="4"><div align="center" class="unnamed1"><font size="3" face="Arial, Helvetica, sans-serif">Modalit&agrave;
    di Navigazione</font></div></td>
    </tr>
    <tr>
    <td height="21" colspan="4">
    <div align="center">
    <form name="form1" method="post" action="controlla.php">
    <table width="93%" border="0">
    <tr>
    <td width="40%" class="unnamed1"><div align="right"><font face="Arial, Helvetica, sans-serif">Scegli
    il tuo profilo di navigazione</font></div></td>
    <td width="38%" class="unnamed1"> <select name="select" size="1">
    <option value="0">Amministratore</option>
    <option value="1">Cliente</option>
    <option value="2">Tesserato</option>
    </select></td>
    </tr>
    <tr>
    <td class="unnamed1"><div align="right"><font face="Arial, Helvetica, sans-serif">Inserisci
    la tua Login</font></div></td>
    <td class="unnamed1"> <input type="text" name="log"></td>
    </tr>
    <tr>
    <td class="unnamed1"><div align="right"><font face="Arial, Helvetica, sans-serif">Inserisci
    la tua password</font></div></td>
    <td class="unnamed1"> <input type="password" name="passwd"></td>
    </tr>
    <tr>
    <td class="unnamed1"></td>
    <td class="unnamed1"></td>
    </tr>
    <tr>
    <td class="unnamed1"></td>
    <td class="unnamed1"> <input type="submit" name="Submit" value="Invia">
    <input type="reset" name="Submit2" value="Cancella"></td>
    </tr>
    <tr>
    <td colspan="2" class="unnamed1"><div align="center">Se
    non sei un utente registrato clicca qui
    </div></td>
    </tr>
    </table>
    </form>
    </div></td>
    </tr>
    </table>
    </div>
    </body>
    </html>

    L'ordine di esecuzione è il seguente:
    index.PHP invia le variabili select, log, passwd al file controlla.PHP che chiama a sua volta la funzione ricerca.

    Ti ringrazio per l'aiuto che mi stai dando, sto riprendendo del copdice che ho fatto dopo molto tempo. Queste sono le tre funzioni interessate come devo procedere ?
    Roberto Dungino

  6. #6
    Utente di HTML.it L'avatar di luke83
    Registrato dal
    Jul 2000
    Messaggi
    1,217
    prova a fare come t'ho detto e vediamo che succede..
    ..::Luca::..
    » "se nn riesci a venirene a capo.. usa il tasto INVIO" © 2005 Luke83
    » "letta la documentazione, spazio all'immaginazione.." © 2006 Luke83
    [frasi random] - [Lucopedia] - [laFetta]

  7. #7
    non riesco a capire il codice che mi hai scritto, potresti essere più chiaro?
    Roberto Dungino

  8. #8
    C'è qualcuno che mi aiuta!!!!
    Roberto Dungino

  9. #9
    ho provato utilizzando la funzione isset e la variabile nel file controlla non viene passata, da che cosda dipende ?
    Roberto Dungino

  10. #10
    Utente di HTML.it L'avatar di luke83
    Registrato dal
    Jul 2000
    Messaggi
    1,217
    ribadisco:

    Codice PHP:
    $passwd = (isset($_POST['passwd']))?$_POST['passwd']:'valora_di_Default';
    $select = (isset($_POST['select']))?$_POST['select']:'valora_di_Default';
    $log = (isset($_POST['log']))?$_POST['log']:'valora_di_Default'
    prima di richiamare la funzione...
    ..::Luca::..
    » "se nn riesci a venirene a capo.. usa il tasto INVIO" © 2005 Luke83
    » "letta la documentazione, spazio all'immaginazione.." © 2006 Luke83
    [frasi random] - [Lucopedia] - [laFetta]

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.