php formular: Bild aud neue Seite übergeben
PeterR
- php
Hallo, ich bin ein php-Laie und habe folgendes Problem.
Ich möchte eine Bildauswahl per Checkbox an eine neue Seite übergeben:
------------------
Seite1.php
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=ISO-8859-1">
<title></title>
</head>
<body>
<FORM ACTION="Seite2.php" METHOD="POST">
<img src="Fotos/001.jpg" border="0">
<br>
Select <input type="Checkbox" name="Ref:001" value='<img src="Fotos/001.jpg">' />
<p> </p>
<img src="Fotos/002.jpg" border="0">
<br>
Select <input type="Checkbox" name="Ref:002" value='<img src="Fotos/002.jpg">' />
<p> </p>
<INPUT TYPE=submit VALUE="Seite 2"><br>
</form>
</body>
</html>
---------------------------
Seite 2.php
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=ISO-8859-1">
<title></title>
</head>
<body>
<p><?php echo $_POST["Ref:001"]; ?></p>
<p><?php echo $_POST["Ref:002"]; ?></p>
</body>
</html>
-------------------------------
Bei meinem Server Strato klappt das einwandfrei, allerdings bei einem anderen webhoster erscheinen die Bilder nicht. Es erscheinen 2 Anführungszeichen, die da eigentlich nicht hin sollen: /"Fotos/001.jpg/"
Bitte helfen Sie auf die Sprünge, ich sehe den Fehler nicht. Vielen Dank im Voraus.
Peter
Hallo!
Es erscheinen 2 Anführungszeichen, die da eigentlich nicht hin sollen: /"Fotos/001.jpg/"
Was soll das für ein Beispielcode sein? Wo kommen bitte die Slashes her wenn sie dich nicht wundern? Meinst du vl "Fotos/001.jpg" d.h., dass die Anführungszeichen maskiert sind?
Hallo!
Es erscheinen 2 Anführungszeichen, die da eigentlich nicht hin sollen: /"Fotos/001.jpg/"
Was soll das für ein Beispielcode sein? Wo kommen bitte die Slashes her wenn sie dich nicht wundern? Meinst du vl "Fotos/001.jpg" d.h., dass die Anführungszeichen maskiert sind?
Schau mal bitte:
http://www.worksinglass.com/Seite1.php
Wenn du hier die Checkbox(en) anklickst und sendest, erscheinen auf Seite 2 die Bilder nicht. Bei rechsklick sehe ich den Fehler:
"Fotos/001.jpg/" weiß aber nicht warum, weil hier alles klappt:
http://www.mr-ibiza.de/Seite1.php
Hallo!
Ich glaube, dass du hier die Lösung für deinen Hoster findest: magic_quotes_gpc bei Strato
Hallo!
Ich glaube, dass du hier die Lösung für deinen Hoster findest: magic_quotes_gpc bei Strato
Achso, ich sehe gerade, dass es bei Strato funktionniert.
Ja, es liegt trotzdem an den magic quotes.
Und nocheinmal...
Alternativ kannst du stripslashes verwenden.
Hallo!
Ich glaube, dass du hier die Lösung für deinen Hoster findest: magic_quotes_gpc bei Strato
Achso, ich sehe gerade, dass es bei Strato funktionniert.
Ja, es liegt trotzdem an den magic quotes.
Danke. Prima. Aber wie geht es jetzt für mich weiter?
Ich habe ein webspace-paket. Muß ich mich jetzt an meinen webhoster melden, damit der entsprechendes veranlaßt?
Ja, es liegt trotzdem an den magic quotes.
Danke. Prima. Aber wie geht es jetzt für mich weiter?
Ich habe ein webspace-paket. Muß ich mich jetzt an meinen webhoster melden, damit der entsprechendes veranlaßt?
Mein webhoster schreit mir gerade über magic quotes:
Magic quotes are already enabled.
Hello,
Mein webhoster schreit mir gerade über magic quotes:
Magic quotes are already enabled.
Dann bau diese Funktion bei Dir ein
#------------------------------------------------------------------------------
#------------------------------------------------------------------------------
function strip($_data)
{
if (!get_magic_quotes_gpc())
{
return $_data;
}
if (is_array($_data))
{
foreach($_data as $key => $val)
{
$_data[$key] = strip($val);
}
}
else
{
$_data = stripslashes($_data);
}
return $_data;
}
#------------------------------------------------------------------------------
und nutze sie dann für alle Übergabearrays, für die es in Frage kommt.
$_POST = strip($_POST);
$_GET = strip($_GET);
$_COOKIE = strip($_COOKIE);
Dann sind die Magic Quotes wieder verschwunden.
Alternativ kannst Du, wenn Du das darfst, eine Datei mit dem Namen '.htaccess' in Deine Document Root legen mit dem Inhalt
php_value magic_quotes_gpc 0
Die wirst Du auf Windows nicht erzeugen können mit dem führenden Punkt und nicht hochladen können mit Deinem FTP-Client.
Da kannst Du dann nur 'htaccess' anlegen, hochladen und dann auf dem Server umbenennen in '.htaccess'
Danach ist die Datei eventuell in Deinem FTP-Client unsichtbar. Um sie wieder sehen zu können, musst Du ggf. "Versteckte Dateien anzeigen" im Menu "Ansicht" einschalten.
Harzliche Grüße vom Berg
http://bergpost.annerschbarrich.de
Tom
Hallo,
Mein webhoster schreit mir gerade über magic quotes:
Magic quotes are already enabled.
eben, genau das ist das Problem.
So einen Quatsch hätte man nie einführen dürfen - und dass manche Hoster das in der Defaultkonfiguration aktivieren, schafft unglaublich viele Stolpersteine. Erkundige dich also, wie man den Unsinn bei deinem Provider abstellen kann.
So long,
Martin
Hello,
Select <input type="Checkbox" name="Ref:001" value='<img src="Fotos/001.jpg">' />
Du solltest die src des Bildes nicht direkt angeben, da Dir dann jeder Sourcename untergeschoben werden kann. Bei derartigen Scripten wirst Du um eine Session nicht herumkommen.
<p> </p>
<img src="Fotos/002.jpg" border="0">
<br>
Select <input type="Checkbox" name="Ref:002" value='<img src="Fotos/002.jpg">' />
der Name der Checkbox darf für PHP keinen Doppelpunkt enthalten, auch wenn das hier funktioniert.
http://de2.php.net/manual/de/language.variables.php gilt auch für Namen con Array-Elementen
Harzliche Grüße vom Berg
http://bergpost.annerschbarrich.de
Tom