PHP bei united-domains AG Propleme
Harald
- php
Hallo,
Habe da für Jemand ein PHP Script geschrieben.
Nun funktionieren die Befehle nicht, obwohl es bei einem anderen Provider geht!
Weiss Jemand was dass sein kann?
Vieleicht ist Jemand bei diesem Provider und weiss ob zusätzliches zu beachten ist.
Normale html Inhalte funktionieren, und if usw geht da nicht.
Vieleicht kann mir Jemand helfen?
Harald
Nun funktionieren die Befehle nicht, obwohl es bei einem anderen Provider geht! Weiss Jemand was dass sein kann?
Hm, kontrollier erstmal ob der Anbieter PHP anbietet!
Zunächst in der Leistungsumfangstabelle, dann mit einem einfachen
<?php
echo "Hello World";
?>
Und wenn das alles dafür spricht, dass PHP unterstützt wird, ist wohl Fehlersuche angesagt.
Hallo Lukas,
Vielen Dank für deine Antwort!
Nun ist mein Partner der Zugriff auf die Domain hat erst wieder um 18.00 zu erreichen.
dann werde ich.:
Leistungsumfangstabelle und
<?php
echo "Hello World";
?>
testen.
Was ist eigendlich Leistungsumfangstabelle?
Freundliche Grüsse,
Harald
Was ist eigendlich Leistungsumfangstabelle?
Irgendwo schreibt der Anbieter sicherlich, wofür dein Partner alles zahlt, wie:
Dafür brauchst du keinen Zugriff, sondern es reicht zu wissen, welches Paket ihr habt. Du guckst dann auf der Homepage von $anbieter, was das Paket alles kann.
Hallo Lukas,
Also PHP wird dort auf jeden Fall im Paket unterstützt!
Hier einmal dass Script/ Vieleicht ist ein Fehler ja schon hier zu erkennen.
<?php
if($Name){
if($Name_Vorname == 'Hallo'){
$fehler = "Fehler";
}
}
if($fehler){
echo "Hallo ist nicht dein Name";
exit;
}
?>
Hi,
<?php
if($Name){
if($Name_Vorname == 'Hallo'){
$fehler = "Fehler";
}
}if($fehler){
echo "Hallo ist nicht dein Name";
exit;
}
?>
Woher genau soll der Wert für $Name kommen?
Wenn du dir sicher bist, dass die Möglichkeit besteht, dass $Name gesetzt ist, kannst du an verschiedenen Stellen ein paar Debugpunkte setzen, um zu überwachen, was genau dein Script gerade macht z.B. so:
<?php
if($Name){
if($Name_Vorname == 'Hallo'){
$fehler = "Fehler";
}
else {
echo "Name_Vorname lautet: " . $Name_Vorname . "<br>";
}
else {
echo "Name ist nicht da<br>";
}
if($fehler){
echo "Hallo ist nicht dein Name";
exit;
}
else
{
echo "kein Fehler gefunden";
}
?>
Lukas
Woher genau soll der Wert für $Name kommen?
ich hatte doch schon einen euro auf register_globals gesetzt
Hallo Lukas,
Globals habe ich gelesen, aber nicht verstanden was dass mit meinem Fehler zu tu haben könnte?
Bitte erkläre mir genauer was es zu bedeuten hat?
Vielen dank harald
Globals habe ich gelesen, aber nicht verstanden was dass mit meinem Fehler zu tu haben könnte?
wenn du die anmerkung bez phpinfo auch gelesen hast, hast du sicher mittlerweile ausprobiert, ob register_globals ein oder aus ist (diese information ist essentiell für das weiter vorgehen)
Bitte erkläre mir genauer was es zu bedeuten hat?
wenn du dein script mit example.com/script.php?param=meiner aufrufst, kannst du mit mangelhaften sicherheitseinstellungen einfach folgendes tun
<?php
echo $param;
?>
mit register_globals = off funktioniert das nicht
da wäre folgendes beispiel möglich:
<?php
$param = $_GET['param'];
echo $param;
?>
oder gleich direkt
<?php
echo $_GET['param'];
?>
Hallo suit,
Ich weis ich bin lästig, aber was mache ich mit
<?php
echo $_GET['param'];
?>
hat dass etwas mit parsen zu tun?
Sorry dass ich in dem Abschnitt irgendiwe nicht klarkomme.
Bitte Hilfe! Harald
Ich weis ich bin lästig, aber was mache ich mit
das war ein beispiel
nehmen wir deinen code
<?php
if($Name){
if($Name_Vorname == 'Hallo'){
$fehler = "Fehler";
}
}if($fehler){
echo "Hallo ist nicht dein Name";
exit;
}
?>
ohne register_globals wirds "$Name" oder "$Name_Vorname" nicht geben - "$fehler" schon
du solltest damit eine fehlermeldung "Undefined variable: Name in \var\www\htdocs\meinscript.php" oder ähnliches erhalten da die variable mit hoher wahrscheinlichkeit nicht exisitert (oder eine "weisse seite", wenn keine fehlermeldungen ausgegeben werden)
es wäre also prinzipiell interessant, wie diese werte ans script übergeben werden weiss ich nicht - vermutlich aber durch ein formular über post oder get - von der seite solltest du die variable mit $_POST['Name'] oder $_GET['Name'] ansprechen
Hallo suid,
Nun habe ich folgendes getestet.:
// 1._Script.php Funktioniert
<?php
$Zeit = strftime("%c");
echo $Zeit;
?>
// 2_Script.php?name=hallo -funktioniert nicht
<?php
if($name == 'hallo'){
echo "Hallo";
}
?>
Wie sieht nun der komplette code 2_Script.php aus damit es funktioniert?
Bitte helft mir!
Harald
Hi,
Ersetze doch mal $name durch $_GET['name']
(hat glaubich suid oder so schon einmal geschrieben)
Oder beschreibe uns, wo deiner Meinung nach die Variable $name herkommen soll.
Hi Luka,
$_GET['name'] funktioniert!
Vielen , Vielen Dank!
Harald
Mahlzeit Harald,
// 2_Script.php?name=hallo -funktioniert nicht
<?php
if($name == 'hallo'){
echo "Hallo";
}
?>
Kein Wunder.
suit hatte Dir doch bereits in seiner ersten Antwort einen Hinweis gegeben: vermutlich verlässt Du Dich darauf, dass register_globals auf "on" steht. Das solltest Du nicht tun. Was Du hingegen tun solltest, ist die verlinkten Artikel auch zu lesen - zum Spaß und aus Langeweile sucht Dir das hier keiner raus.
MfG,
EKKi
Was Du hingegen tun solltest, ist die verlinkten Artikel auch zu lesen - zum Spaß und aus Langeweile sucht Dir das hier keiner raus.
doch, ich hab das ganze präziese schon 2x explizit erwähnt, weil ich schon festgestellt hatte, dass der op den artikel offenbar NICHT gelesen hat oder lesen wird ;)
Hallo suit,
Gelesen hatte ich Deinen Hinweis / Global link schon.
Ich hatte dass nur alles nicht verstanden,
weil es mein erstes PHP Script war -Aller Anfang ist Schwer-.
Vielen Vielen dank für deine Hilfe!
Hattest von Anfang an Recht mit $_GET['param'].
Bis bald
Harald
Hi,
Was ist eigendlich Leistungsumfangstabelle?
die Tabelle, die den Umfang der Leistung enthält, welche Dir Dein Provider zusichert. Oftmals auch "Features" genannt - oder irgendwie anders, so dass es den jeweiligen Provider möglichst gut hinstellt.
Cheatah
Nun funktionieren die Befehle nicht, obwohl es bei einem anderen Provider geht!
du hast vermutlich schlecht programmiert
Weiss Jemand was dass sein kann?
ich setze 1 euro auf "register_globals"
Vieleicht ist Jemand bei diesem Provider und weiss ob zusätzliches zu beachten ist.
phpinfo erfüllt den selben zweck und du musst niemanden bei united-domains belästigen
Hallo suit,
Vielen dank für Deine Antwort, also so sieht es abgekürzt aus.:
<?php
if($Name){
if($Name_Vorname == 'Hallo'){
$fehler = "Fehler";
}
}
if($fehler){
echo "Hallo ist nicht dein Name";
exit;
}
?>
Vielen dank für Deine Antwort, also so sieht es abgekürzt aus.:
lies bitte den von mir verlinkten register_globals-link - der beschreibt [1] kurz und knapp genau dein problem - sogar in etwa der selben form
[1] vermutlich