PHP Parameterübergabe

PC-Hickhack

Cadet 3rd Year
Dabei seit
Feb. 2012
Beiträge
41
Hallo Zusammen,

ich versuche gerade, eine uralte php Appl. in einer VM ans Laufen zu bringen. Leider habe ich seit knapp 15 Jahren nichts mehr mit php gemacht und komme daher bei der Parameterübergabe nicht mehr zurecht, die "plötzlich" nicht mehr richtig funktioniert.


Zuerst erfolgt der "Aufruf" einer weiteren php Datei innerhalb eines html Formulares:

PHP:
[...]
<td width="70" align=center><a href=country_edit.php?id=<?php echo $data['ID'] ?>&action=edit>X</a></td>
[...]
So zeigt der Browser den Link an, wenn ich den Mauszeiger draufhalte:
Auswahl_002.png

Beginn Datei "country_edit.php":
PHP:
<?php 
echo "Aktion: ".$action;
[...]
Ergebnis im Browser:
"Aktion:"
Das "edit" wird nicht angezeigt.

Könntet Ihr mir bitte Hilfestellung geben?
(Mir geht's natürlich nicht nur um diese lächerliche Ausgabe: In Abhängigkeit von $action werden danach verschiedene Dinge durchgeführt.)

Versionen:
XAMPP 1.7.3
PHP 5.3.1
Keine manuellen Einstellungen nach Installation durchgeführt, php Code lief vor einigen Jahren definitiv in dieser Form.
Browser: IE11 und Firefox52

Und:
Ich habe kein Interesse daran, den uralten und umfangreichen Code auf ein aktuelles php anzupassen. Mir würde es völlig reichen, die Möglichkeit zu haben, den jetzigen Code in einer VM nochmals benutzen zu können.

Vielen Dank.
 

Eagle-PsyX-

Lt. Commander
Dabei seit
Juni 2006
Beiträge
1.948
PHP:
$_GET['id'];
$_GET['action'];
register_globals gottseidank ist der Müll abgeschafft. Du solltest Variable auch auf ihr Vorhandensein prüfen, sonst gibt es eine Warnung und ggf. Probleme.
Du kannst leider diese PHP-Altlast mit

PHP:
ini_set('register_globals',true);
aktivieren bzw. auch in der php.ini . Definitiv aber nicht empfehlenswert!t

PHP:
$action = isset($_GET['action']) ? sprintf('%s',$_GET['action']) : '' ;
Falls du ein String erwartest bei Verwendung von conditional statements.
 
Zuletzt bearbeitet:

PC-Hickhack

Cadet 3rd Year
Ersteller dieses Themas
Dabei seit
Feb. 2012
Beiträge
41
Danke Euch Beiden!

Ich habe die Anpassungsvorschläge vom "Eagle" mal ausprobiert und es funktionierte mit $_GET. Allerdings hätte ich mich dann durch alle Skripte wühlen und viele Anpassungen und Tests machen müssen.

Stattdessen habe ich es nun durch eine Reise in die Vergangenheit gelöst: :p
Die aktuelle Software von der VM geworfen und nun laufen WinXP, XAMPP 1.4.12 und IE6.0 und es funktioniert wieder! :jumpin:

Mir ist klar, daß das Mist ist, aber es befindet sich alles in einer VM ohne Netzzugang und wird nur noch im Notfall von mir benutzt, vielleicht noch 2 - 3 mal im restlichen Leben. Da macht das nichts. Es werden nur statische Webseiten generiert im Layout der frühen 2000er Jahre. Ich werde mich um einen CMS basierten Nachfolger bemühen und möglichst nicht weiter in den Untiefen der Webentwicklung umherirren. Fühle mich im Oracle-DB Umfeld wesentlich wohler... ;)
 
Zuletzt bearbeitet:
Top