Gleiche Variablennamen ?

BeaTBoxX

Erfahrenes Mitglied
Hallo zusammen,
hab mal wieder ein kleines Problemchen und hoffe ,jemand kann mir nen TIp geben :-)

Habe eine Suchfunktion für eine Datenbank geschrieben, die fuer 3 Funktionalitäten ( Objekt ansehen,bearbeiten,löschen) benutzt werden soll. Demenstsprechend wird eine Zahl fuer die jeweilige Funktion übergeben. (1,2,3).


Innerhalb hab ich 3 Subfunktionen fuer 3 suchweisen.
Wenn ich den parameter $funktion aber weiterübergeben möchte, bekomme ich die Meldung

Notice: Undefined variable: funktion

Sinngemäßsieht der Code so aus :

PHP:
subfunk1($funktion){
    //mach dieses
}

subfunk2($funktion){
    //mach jenes
}

subfunk3($funktion){
    //mach sonstwas
}


suche($suchtyp,$funktion) {

switch($suchtyp) {

case '1':
     subfunk1($funktion);
     break;

case '2':
     subfunk2($funktion);
     break;

case '3':
     subfunk3($funktion);

}

}




// aufruf würde so geschehen:
$funktion = 1;
suche(2,$funktion)

Geht das so in der Form wohl nicht? Ich meine innerhalb einer Subfunktion wird doch eine neue Variable $funktion erzeugt , die mit der Variable aussen nix zu tun hat.

Oder wie ist das mit den Gültigkeitsbereichen?

Danke schonmal :)

Gruß
Frank
 
Übergbene Variablen liest man so auch nicht aus, auch wenn es in Einzelfällen durch den in der php.ini gesetzten Parameter mit register_globals = 1 aktiviert ist.
Um den Parameter "Funktion" auszulesen geschieht dies

bei einer Übergabe per GET (an der URL) per $_GET['Funktion']
bei einer Übergabe per POST per $_POST['Funtkion']
oder eben beides zusammen
$_REQUEST['Funktion']
 
Zurück