php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger > PHP Tipps 2007

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 30.12.2005, 15:21  
Gast
 
Beiträge: n/a
Standard php Aufruf von Formular und Übergabe einer Variable (get)

Hallo liebe PHPler,

mir will es nicht gelingen die Variable $navi mittels php anzuzeigen. Lustigerweise wird die Variable in der URL angezeigt (bei Verwendung von "get"), jedoch nicht mittels echo-Befehl.

Dieser Codeschnipsel soll später einmal ein Photoalbum werden und ich möchste dann die Photos anzeigen, indem ich mit u.g. Methode das SQL-Statement manipuliere (Limit x,y).

Kann mir jmd. weiterhelfen, das wäre großartig.

Euer

Kevin (PHP-Anfaenger)

Code:
<html>

<head>
<script language="JavaScript">
function WertSetzen(wert){
document.sendform.navi.value = wert;
document.sendform.method = "get";
document.sendform.action = "test2.php";
document.sendform.submit();
}
</script>

</head>
<body>

<?php
echo ($navi);

if (isset($navi)){
echo "
";
echo "
";
echo "
navi: $navi";
echo "
";
echo "
";
}
else
{
echo "no value";
}
?>

<form name=sendform>
<input type='hidden' name='navi' value=''>
<input type='button' name='1' value="1" onClick="WertSetzen(this.name)">
<input type='button' name='2' value="2" onClick="WertSetzen(this.name)">

</form>
</body>
</html>
 
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 30.12.2005, 15:32  
Erfahrener Benutzer
 
Registriert seit: 21.05.2008
Beiträge: 9.937
Zergling-new wird schon bald berühmt werden
Standard

ich sehe keine Verwendung von $_GET['navi']
mach dich über die Google- oder Forensuche über "register_globals" schlau.
Zergling-new ist offline  
Alt 30.12.2005, 15:38  
Erfahrener Benutzer
 
Registriert seit: 18.07.2004
Beiträge: 2.162
PHP-Kenntnisse:
Fortgeschritten
Basti
Standard

PHP-Code:
if (isset($_GET['navi'])) echo $_GET['navi']; 
Alternativ $_POST['navi'] benutzen.

http://php.net/manual/en/security.globals.php

Und, in der php.ini deines Entwicklungsservers mal error_reporting auf E_ALL
setzen.

Basti
Basti ist offline  
Alt 30.12.2005, 15:42  
Gast
 
Beiträge: n/a
Standard

wunderbar, das hat geholfen

.. kann es sein, dass sich hier bei PHP was geändert hat? Vor 5 Jahren hatte ich 'ne PHP-Seite programmiert, da hatte es gereicht, wenn man die Variable über echo($variable) ausgegeben hat.

Vielen Dank für die flotte Hilfe!

- Kevin

Der Vollständigkeit halber hier die Lösung meines Problems:

Code:
<?php
$navi = ($_GET['navi']);

if (isset($navi)){
echo "
";
echo "
";
echo "
navi: $navi";
echo "
";
echo "
";
}
else
{
echo "no value";
}
?>
 
Alt 30.12.2005, 15:46  
Erfahrener Benutzer
 
Registriert seit: 21.05.2008
Beiträge: 9.937
Zergling-new wird schon bald berühmt werden
Standard

Zitat:
Zitat von BalthusD
wunderbar, das hat geholfen

.. kann es sein, dass sich hier bei PHP was geändert hat? Vor 5 Jahren [..]
Quatsch, in 5 Jahren ändert sich doch nix...

Geholfen haben meine Hinweise offenbar nichts, sonst hättest du die Frage jetzt hier nicht gestellt.
Zergling-new ist offline  
Alt 30.12.2005, 15:58  
Gast
 
Beiträge: n/a
Standard

ok ok, " Perhaps the most controversial change in PHP is when the default value for the PHP directive register_globals went from ON to OFF in PHP 4.2.0. Reliance on this directive was quite common and many people didn't even know it existed and assumed it's just how PHP works."

Ist 'ne Einstellungssache .. das erklärt auch weshalb ich vor ein paar Jährchen hier keine Probs hatte, da lag der Schalter wohl anders.

cya und happy new year

Kevin
 
Alt 30.12.2005, 16:03  
Erfahrener Benutzer
 
Registriert seit: 21.05.2008
Beiträge: 9.937
Zergling-new wird schon bald berühmt werden
Standard

Zitat:
Ist 'ne Einstellungssache
Find ich eigentlich nicht, denn so wird klar woher eine Variable kommt und überschrieben werden können Variablen jetzt implizit nicht mehr


Zitat:
cya und happy new year
danke dir auch :P
Zergling-new ist offline  
Alt 30.12.2005, 16:05  
Erfahrener Benutzer
 
Registriert seit: 18.07.2004
Beiträge: 2.162
PHP-Kenntnisse:
Fortgeschritten
Basti
Standard

[Edit]War wohl etwas zu langsam...[/Edit]

In der Dokumentationsseite hinter meinem Link steht die Antwort auch
gleich im ersten Satz.

Und, meine Empfehlung mit dem error_reporting steht immer noch. So
sinnlose Code-Zeilen, wie

PHP-Code:
<?php
$navi 
= ($_GET['navi']);
if (isset(
$navi)){
?>
würdest du dann nicht produzieren, sondern zumindest für die erste Zeile
mein Beipiel von oben aufgreifen.

Konkret: Ob $_GET['navi'] existiert, kannst du nicht aussagen, ohne die
Existenz vorher sicherzustellen. Wie also $navi den Wert eines Feldes
zuweisen, das womöglich garnicht existiert. PHP bügelt solche unschönen
Konstrukte glatt, gibt dr aber einen Hinweis darauf, den du nicht
unterdrücken solltest.

Und, zu prüfen, ob $navi existiert, nachdem du es eine Zeile vorher
gesetzt hast ... vor solchen Denkfehlern kann dich der Interpreter natürlch
nicht bewahren ... leider.

Basti
Basti ist offline  
Alt 30.12.2005, 16:12  
Gast
 
Beiträge: n/a
Standard

hehe, naja, bin ja auch noch ein bloody noob.

Ich habe die Vriable mit isset() geprüft, da ich nicht wusste, wie PHP reagiert, wenn ich 'ne Variable anfordere, die womöglich gar nicht existiert.

Vielen Dank an dieser Stelle nochmal an Euch alle - ich hoffe, dass ich in Zukunft anderen ebenso flott und kompetent helfen kann.

Kevin
 
Alt 30.12.2005, 16:16  
Erfahrener Benutzer
 
Registriert seit: 21.05.2008
Beiträge: 9.937
Zergling-new wird schon bald berühmt werden
Standard

Wenn du schon vor 5 Jahren programmiert hast, hätte ich erwartet dass du solche Denkfehler mittlerweile nicht mehr machst *duck&wech*
Zergling-new ist offline  
 


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
e-mail adresse per Variable im Formular ändern rcorten PHP Tipps 2008 13 30.04.2008 13:43
Variable zurück an Formular schicken ?!?!? TeazY PHP Tipps 2008 5 18.12.2007 20:07
[Erledigt] Variable ohne Formular &quot;weiterschicken&quot; PHP Tipps 2007 15 21.12.2005 15:49
Variable aus Formular auslesen .. PHP Tipps 2005-2 10 25.10.2005 15:48
Formular variable gestallten PHP Tipps 2005-2 2 03.08.2005 12:03
Variable aus Formular ohne submit Button übergeben PHP Tipps 2005-2 3 24.06.2005 17:08
Variable aus Formular nicht auslesbar PHP Tipps 2005-2 10 23.06.2005 18:51
Formular auslesen mit PHP -> Variable mehrfach aúsgeben DDogg PHP Tipps 2005 2 21.04.2005 13:16
variable ohne formular übergeben nautiluS PHP Tipps 2005 9 11.04.2005 13:46
Funktion aufruf Variable überprüfen PHP Tipps 2005 48 11.01.2005 16:53
wieso bleibt variable aus dem Formular auf FALSE? nieselfriem PHP Tipps 2004-2 6 03.12.2004 01:06
Wert aus Formular in Variable speichern PHP Tipps 2004-2 2 01.12.2004 16:56
Variable Mitgliederliste aus Formular erstellen Datenbanken 2 18.10.2004 16:33
Problem mit Variable bei Formular auf lokalem Rechner PHP Tipps 2004 3 07.10.2004 15:17
Daten aus Formular in eine Variable packen PHP Tipps 2004 2 14.06.2004 21:28

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
php selbstaufruf form, formular php aufruf, formular übergabe get, $_get formular, phpaufruf aus html, formular selbstaufruf php, get x y übergabe, php selbstaufruf get variable, php suchformular get x y, php aufruf im formular, formulardaten als php variable, php erster aufruf, php navigation get forumular, variable_get funktion, php übergabe get x y, php aufruf übergeben, php aufruf variable, get variablen in formular anzeigen, php übergabe von get, formular get variable

Alle Zeitangaben in WEZ +1. Es ist jetzt 22:22 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum

Creative Commons License
Dieser Inhalt ist unter einer Creative Commons-Lizenz lizenziert.