Visualizzazione dei risultati da 1 a 7 su 7

Discussione: richiamo funzione

  1. #1

    richiamo funzione

    uff... nn capisco proprio perchè nn va

    allora, ecco la mia pagina:

    Codice PHP:
    if ( !$userdata['session_logged_in'] )
    {
    /* se utente sloggato fai questo */
    else
    {
     switch (
    $i) {

        case 
    "vfile":
        
    visualizza();
        break;

    default:
           
    elencat();
         break;
    }


    function 
    elencat()
    {
    /* funzione varia che presenta questo al suo interno */
    echo "<th width=\"95%\" class=\"thTop\"><a href=\"?i=vfile&amp;nu=$row[id_cat]\">$row[nome_cat]</a></th>";

    }
    function 
    visualizza($nu)
    {
    /* funzione visualizza */

    allora... la funzione elencat va perfettamente (nel senso che all'apertura della pagina, parte quella funzione).
    il link presente all'interno della funzione viene passato (nel senso che cliccandoci sopra, nella barra degli indirizzi di explorer appare nomepagina.php?i=vfile&nu=$row[id_cat], solo che nn viene letto!! quindi poichè nn viene ricevuto, nn parte la funzione "visualizza"

    dove sbaglio ???

    grazie in anticipo

    kicko

  2. #2
    Utente di HTML.it L'avatar di citrus
    Registrato dal
    Feb 2002
    Messaggi
    774
    la funzione visualizza($nu); che hai scritto vuole in argomento un paramentro $nu che tu però non passi quando la richiami...
    se ho ben capito il problema potrebbe stare li


    prova così:
    codice:
    ...
    case "vfile": 
        visualizza($_GET["nu"]); 
        break;
    ...

  3. #3
    Utente di HTML.it L'avatar di citrus
    Registrato dal
    Feb 2002
    Messaggi
    774
    ma ora che mi accorgo...
    ancora prima non raccogli in maniera corretta la variabile che processi nel ciclo switch.

    invece che switch($i) prova switch($_GET["i"])
    ...
    in generale tutti i dati che passi tramite url vanno raccolti nella pagina di destinazione con l'array $_GET

  4. #4
    si, all'inizio l'avevo scritta così

    codice:
    case "vfile": 
        visualizza($nu); 
        break;
    ma non andava.
    ho provato anche la tua soluzione, ma nn va.... :master:

    ho provato a sostituire il switch con

    codice:
    if(!isset($nu))
    {
    elencat();
    } else {
    visualizza($nu);
    }
    ma niente

    l'errore c'è .. ma nn si trova

  5. #5
    non è che semplicemente al posto di switch($i) devi dirgli di andarlo a prendere nel GET? switch($_GET['i'])

  6. #6
    Originariamente inviato da citrus


    invece che switch($i) prova switch($_GET["i"])
    ...
    nada... ancora niente :master: :master:


    CORREGGO...

    FUNZIONA ....grazie mille ragazzi... troppo gentili

    kicko

  7. #7
    Per informazione:

    il classico problema di register_global, nel tuo codice parti sempre dal principio che sia a OFF e richiama correttamente le variabili ricevuto usando $_GET, $_POST ti eviterai molti problemi e sei sicuro che funziona su tutte le config ...

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.