Problem mal gehts mal nicht

piti66

Erfahrenes Mitglied
Und zwar hab ich für mein Fußballverein ein script geschrieben wo sie statistiken, spielberichte u.s.w über eine oberfläche verwalten können! Nun hab ich mir einen virtuellen server angeschafft und auf einmal funktionieren die scripte nicht mehr!
schon wenn ich nur folgendes auffrufen will geht es nicht weiter!
Code:
 				<?PHP
 				if($action) {
 		    		if($action=="add") { include("add.php"); }
 		    		if($action=="del") { include("del.php"); }
 		    		if($action=="edit") { include("edit.php");}
 				}
 				else {
 				?>
 
 								 <h4>Ergebnisse</h4>
 								 <hr noshade="1">
     					    <b><a href="index.php?action=add" target="inhalt">Ergebnis hinzufügen</a></b><br>
 
     					    <b><a href="index.php?action=del" target="inhalt">Ergebnis löschen</a></b><br>
 
     					    <b><a href="index.php?action=edit" target="inhalt">Ergebnis editieren</a></b>
 
 
 				<?
 				}
 				?>

Also ich will einfach nur die einzelnen funktionen hinzufügen oder löschen oder ändern per $action aufrufen! Doch er reagiert garnicht und lädt nicht den gewählten link! Auf den alten server geht es genau so!
Weiß jemand an was dass liegt?

Mfg
 
Hallo

Hast du vorher einen Teil der, die variable $action aus dem Array $HTTP_GET_VARS ausliest?

Wenn nicht würde ich gleich am Anfang deines PHP-Scriptes ein:

PHP:
<?
 $action = $HTTP_GET_VARS['action'];

...

?>

einfügen.

Mit freundlichen Grüßen
SkyBenni


Edit: Dass es auf dem alten Server ging und auf dem neuen, virtuellen nicht, könnte daran liegen, dass auf dem Alten die globalvars enabled waren und auf dem Neuen nicht. Bin mir da aber nicht 100% sicher :)
 
statt der 3 if- Abfragen wäre switch etwas eleganter:
PHP:
<?
if(isset($_GET['action'] {
     switch($_GET['action']) {
            case 'add':...
                break;

            case 'edit':
                break;

            case 'del':
                break;

        }
  }

schau mal unter phpinfo:
PHP:
<?php
	phpinfo();
?>

was unter register_globals steht. Steht es auf off (und das ist soweit ich weiss seit PHP 5(?) standardmässig abgeschaltet) kannst du so nicht auf eine übergebene Variable zugreifen.
Sicherheitshalber würde ich grundsätzlich nur mit $_GET oder $_POST auf übergebene Variablen zugreifen.
 
Zuletzt bearbeitet:
Danke für eure Hilfe!
Register_glo war auf auf off stell ich dann noch um!

Mfg

piti

PS: Danke Misspiggy! :)
 
das solltest du eben nicht tun, es ist besser die Einstellung so zu lassen. Wenn du mit $_POST, $_GET,$_REQUEST (für beide) auf die Globals zugreifst, brauchst du es nicht zu ändern.
Ausserdem kannst du so das script auch überallhin übertragen, ohne Rücksicht auf die jeweilige Serverkonfiguration zu nehmen.
 
Zuletzt bearbeitet:
Danke misspiggy!
Versuche die ganze zeit die php.ini auf meinen linux server zu ändern aber irgendwie gehts nicht! mc kommt nur segmentation fault und anders bekomm ich es auch nicht! Im Confixx kann man dass auch ändern aber dass geht auch nicht! Er übernimmt dass nicht! Naja egal.Werde überall den Befehl reinsetzen und gut!

mfg

piti
 
Zurück