php-problem mit opera 12.11
Tanja1990
- php
hallo,
ich bin im bereich php ein newbie.
folgendens script funktioniert unter opera 12.11 nicht richtig:
<html>
<head>
<title>abc</title>
</head>
<body>
<p>Die Webseite</p>
<?php
$url = $_GET['url'];
echo "$url\n";
?>
<p>ist nicht mehr Teil dieses Internet-Angebots.</p>
<form action="<?=$url?>" target="_blank">
<input type="submit" value="ok" onclick="javascript:history.go(-1)">
<input type="button" value="Zurück" onclick="javascript:history.go(-1)">
</form>
</body>
</html>
durch drücken des buttons "ok" soll sich in einem neuem fenster, die in der variable "url" gespeicherte webseite öffnen. gleichzeitig soll im aktuellen fenster die voherige seite aufgerufen werden.
beim ie und beim ff klappt dies wie gewünscht. nur opera 12.11 zickt rum und öffnet das neue fenster nicht, geht aber eine seite zurück.
kann mir einer helfen?
gruß tanja
Moin
zuersteinmal hat dies nichts mit PHP zu tun. Zum 2. warum kopierst du um?
<?php
$url = $_GET['url'];
echo "$url\n";
?>
nutze doch bitte direkt die Variable
<form action="<?php echo $_GET['url']?>" target="_blank">
Nun zu deinem eigentlichen Problem. In Opera kann man die Auswertung des HTML-Target-Attributes verhindern. Somit würde das Formular ins selbe Fenster geöffnet, was du gleich darauf mit javascript:history.go(-1)
wieder zurückkehren lässt.
Was willst du denn eigentlich erreichen?
Gruß Bobby
Tach!
nutze doch bitte direkt die Variable
<form action="<?php echo $_GET['url']?>" target="_blank">
htmlspecialchars() fehlt noch, sonst ist das kaputt.
~~~php
<form action="<?php echo htmlspecialchars($_GET['url']) ?>" target="_blank">
dedlfix.
Moin
htmlspecialchars() fehlt noch, sonst ist das kaputt.
<form action="<?php echo htmlspecialchars($_GET['url']) ?>" target="_blank">
Ja natürlich... sorry
Gruß Bobby
--
-> Für jedes Problem gibt es eine Lösung, die einfach, sauber und falsch ist! <-
### Henry L. Mencken ###
-> Nicht das Problem macht die Schwierigkeiten, sondern unsere Sichtweise! <-
## Viktor Frankl ###
ie:{ br:> fl:{ va:} ls:< fo:) rl:( n4:( de:> ss:) ch:? js:( mo:} sh:) zu:)
Was bewirkt htmlspecialchars()?
Moin
Was bewirkt htmlspecialchars()?
Es maskiert Sonderzeichen, damit XSS nicht möglich ist! Das ist sehr wichtig!!
Stell dir vor du rufst deine Hinweis.php folgendermaßen auf:
hinweis.php?url=url="><iframe src=http://example.com/>
Probiers am besten aus. Hier könnte Javascript o.ä. eingeschleusst werden.
Gruß Bobby
Was willst du denn eigentlich erreichen?
ich bastel gerade an meiner hp
bei beim anklicken von externernen links auf der seite beispiel.html soll die seite hinweis.php im gleichen fenster aufgerufen werden.
<a href="hinweis.php?url=http://www.example.org">externe seite</a>
auf der hinweis.php soll nach klick auf ok die domain www.example.org in einem neuem fenster geöffnet werden und die hinweis.php geht zurück zur seite beispiel.html
ich hoffe es wird klar.
Moin
Was willst du denn eigentlich erreichen?
ich bastel gerade an meiner hp
ähm... ja... wich dachte nicht das du Kuchen backen möchtest...
bei beim anklicken von externernen links auf der seite beispiel.html soll die seite hinweis.php im gleichen fenster aufgerufen werden.
<a href="hinweis.php?url=http://www.example.org">externe seite</a>
auf der hinweis.php soll nach klick auf ok die domain www.example.org in einem neuem fenster geöffnet werden und die hinweis.php geht zurück zur seite beispiel.html
ich hoffe es wird klar.
Ok, also ist dies der Code der hinweis.php. Ein Neues Fenster wirst du wohl per Javascript aufrufen müssen. Denn in Opera, lässt sich das target unterdrücken.
Entsprechende Scripte gibt es zu tausenden.
Gruß Bobby
Ok, also ist dies der Code der hinweis.php. Ein Neues Fenster wirst du wohl per Javascript aufrufen müssen. Denn in Opera, lässt sich das target unterdrücken.
kann ich denn mit javascript auf die variable url (hinweis.php?url=http://www.example.org/) zugreifen um sie zur weiterleitung zu nutzen?
Gruß Tanja
Moin
Du schreibst ein kleines Script, das ein Fenster öffnet in Javascript (da gibt es tausende im Netz)
<script type="text/javascript">
function FensterOeffnen (Adresse) {
MeinFenster = window.open(Adresse, "Zweitfenster", "width=300,height=400,left=100,top=200");
MeinFenster.focus();
}
</script>
<form action="javascript:void(0)" >
<input type="submit" value="ok" onclick="FensterOeffnen(<?php echo htmlentities($url)?>),javascript:history.go(-1)">
<input type="button" value="Zurück" onclick="javascript:history.go(-1)">
</form>
Gruß Bobby
Moin
<input type="submit" value="ok" onclick="FensterOeffnen(<?php echo htmlentities($url)?>),javascript:history.go(-1)">
So passierts beim Schnellschrieben.
Richtig natürlich:
~~~html
<input type="submit" value="ok" onclick="FensterOeffnen('<?php echo htmlentities($_GET['url'])?>');javascript:history.go(-1)">
Gruß Bobby
verstanden, jetzt komme ich allein weiter.
vielen lieben dank für deine hilfe bobby! :-)
gruß tanja