Frame

Status
Niet open voor verdere reacties.
Weer hetzelfde; ik krijg dit als ik de bron in de browser bekijk bij index.php?pagina=a en b en c:
HTML:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
 
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Titel</title>
<link href="css.css" rel="stylesheet" type="text/css" />
 
</head>
<body>
 
<iframe class="frame" name="frame" frameborder="0" src="fout.htm" allowTransparency="true" scrolling="no" width="200" height="200"></iframe>
</body>
</html>
 
Weet je zeker dat je mijn script gebruikt? Want in mijn hele script komt geen fout.htm voor en het kan niet zo zijn dat php dat verzint. Kan je nog een keer je broncode posten?
 
Sorry! Zo schiet het niet echt op nee! Ik moest even Ctrl+F5 doen in plaats van alleen F5 in IE9. Maar nu werkt hij nóg niet;
De webpagina op http://a/ is mogelijk tijdelijk uitgeschakeld of permanent verplaatst naar een nieuw webadres.
 
ook bij de ingestelde b en c, maar ?pagina=www.google.nl werkt bijv. weer wel.
Just
 
Ik zie het al. Pagina is daar nog niet beschreven. Hier komt die

PHP:
<?php
 
$presets = array(
            "a" => "google.nl",
            "b" => "yahoo.nl",
            "c" => "helpmij.nl",
            // Voeg telkens een regel toe om meer presets toe te voegen
            );
            
$startpagina = 'start.htm';
 

// Pagina bepalen
if(isset($_GET['pagina'])) {

$x = $_GET['pagina']

    if(isset($presets["$x"])) {
        if(strpos($presets["$x"], 'http://')) {
            $pagina = $presets["$pagina"];
        } else {
            $pagina = 'http://' . $presets["$pagina"];
        }
    } else {
        if(strpos($_GET['pagina'], 'http://')) {
            $pagina = $_GET['pagina'];
        } else {
            $pagina = 'http://' . $_GET['pagina'];
        }
    }
} else {
    $pagina = $startpagina;
}
 
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
 
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Titel</title>
<link href="css.css" rel="stylesheet" type="text/css" />
 
</head>
<body>
 
<iframe class="frame" name="frame" frameborder="0" src="<?php echo $pagina; ?>" allowTransparency="true" scrolling="no" width="200" height="200"></iframe>
</body>
</html>
 
Laatst bewerkt:
Ik zal vanaf nu iedere code die jullie posten zo snel mogelijk uploaden en dan kan/kunnen je/jullie hem hier zien.
Nu dus waarschijnlijk weer ergens een syntax error, maar hoe herken je die dan eigenlijk in dreamweaver?
Just
 
De regel aangever in dreamweaver wordt dan rood. Ik krijg een server fout op je webpagina..
 
Oké, en ja, een server fout dus er is waarschijnlijk iets verkeert met de code?
Helpt het mischien als ik zeg dat mijn site draait op Windows Server (2003 of 2007)?
Just
 
Heb ik geen verstand van. Maar waarschijnlijk ligt het daar niet aan. Er zitten geen syntaxfouten in. Ik ga de code nog een keer nalopen...
 
Sorry voor de late reactie, de server error is nu weg zoals je hier weer kunt zien, maar ?pagina=a en b en c werkt weer niet, hij print alleen http:// in scr="" bij het frame.
Standaart zie je wel mooi start.htm als je niet iets achter index.php zet.
Just
 
Laatst bewerkt:
Ik krijg nog steeds een serverfout. Bovendien was weer pagina niet beschreven. Hier komt die:

PHP:
<?php
 
$presets = array(
            "a" => "google.nl",
            "b" => "yahoo.nl",
            "c" => "helpmij.nl",
            // Voeg telkens een regel toe om meer presets toe te voegen
            );
            
$startpagina = 'start.htm';
 

// Pagina bepalen
if(isset($_GET['pagina'])) {

$x = $_GET['pagina']

    if(isset($presets["$x"])) {
        if(strpos($presets["$x"], 'http://')) {
            $pagina = $presets["$x"];
        } else {
            $pagina = 'http://' . $presets["$x"];
        }
    } else {
        if(strpos($_GET['pagina'], 'http://')) {
            $pagina = $_GET['pagina'];
        } else {
            $pagina = 'http://' . $_GET['pagina'];
        }
    }
} else {
    $pagina = $startpagina;
}
 
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
 
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Titel</title>
<link href="css.css" rel="stylesheet" type="text/css" />
 
</head>
<body>
 
<iframe class="frame" name="frame" frameborder="0" src="<?php echo $pagina; ?>" allowTransparency="true" scrolling="no" width="200" height="200"></iframe>
</body>
</html>
 
Laatst bewerkt:
Weer een server error, maar met een ; achter $x = $_GET['pagina'] werkt het wel!!:D
Nu nog een vraagje, kun je alleen nog even het stukje uit de code weghalen dat ervoor zorgt dat je ook een URL achter index.php?pagina= kunt zetten?
Bedankt!
Just
 
Zou kunnen, maar waarom is dat nodig? bedenk wel dat als gebruikers de website willen gebruiken, en ik weet niet of dat zo is, dan is dit veel gebruiksvriendelijker.

EDIT: Ik snap eigenlijk je vraag ook niet. Wil je dat je er alleen a of b of c of weet ik het wat achter kan zetten?
 
Laatst bewerkt:
Als ik er geen ; achterzet krijg ik weer een server error, en ik noem het niet gebruiksvriendelijker als mensen tegen een leuke 500 interne server error aankijken in plaats van de webpagina!
En ja, ik zou graag willen dat je naar index.php kunt gaan en dan start.htm in het frame krijgt, en als je naar index.php?pagina=a, b of c de bescheven pagina tevoorschijn komt, wat nu dus al werkt, maar ook nog dat index.php?pagina=www.google.nl niet werkt als die niet is bescheven bij a,b en c.
Snappie?
Just
 
Dus als ik het goed begrijp werkt die wel in ie9 maar niet in chrome?
Met het volgende script kun je alleen naar de presets toe, anders komt de startpagina in beeld

PHP:
<?php
$presets = array(
            "a" => "google.nl",
            "b" => "yahoo.nl",
            "c" => "helpmij.nl",
            // Voeg telkens een regel toe om meer presets toe te voegen
            );
            
$startpagina = 'start.htm';
 
 
// Pagina bepalen
$x = $_GET['pagina'];
 
if(isset($presets["$x"])) 
{
  	if(strpos($presets["$x"], 'http://')) 
	{
    $pagina = $presets["$x"];
    } 
	else 
	{
    $pagina = 'http://' . $presets["$x"];
    }    
} 
else 
{
    $pagina = $startpagina;
}
 
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
 
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Titel</title>
<link href="css.css" rel="stylesheet" type="text/css" />
 
</head>
<body>
 
<iframe class="frame" name="frame" frameborder="0" src="<?php echo $pagina; ?>" allowTransparency="true" scrolling="no" width="200" height="200"></iframe>
</body>
</html>
 
Volgens mij werkte de vorrige hij in IE9 als Chrome, maar dat doet er niet toe want nu werkt hij! Reuze bedankt! :D:D:D
Nog eventjes op een rijtje;

Code voor een php bestand waabij je ?pagina=a, be en c maar ook een URL kunt zetten om die in het frame kunt krijgen (en als je dat niet doet krijg je start.htm):
PHP:
<?php
 
$presets = array(
            "a" => "google.nl",
            "b" => "yahoo.nl",
            "c" => "helpmij.nl",
            // Voeg telkens een regel toe om meer presets toe te voegen
            );
            
$startpagina = 'start.htm';
 
 
// Pagina bepalen
if(isset($_GET['pagina'])) {
 
$x = $_GET['pagina'];
 
    if(isset($presets["$x"])) {
        if(strpos($presets["$x"], 'http://')) {
            $pagina = $presets["$x"];
        } else {
            $pagina = 'http://' . $presets["$x"];
        }
    } else {
        if(strpos($_GET['pagina'], 'http://')) {
            $pagina = $_GET['pagina'];
        } else {
            $pagina = 'http://' . $_GET['pagina'];
        }
    }
} else {
    $pagina = $startpagina;
}
 
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
 
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Titel</title>
<link href="css.css" rel="stylesheet" type="text/css" />
 
</head>
<body>
 
<iframe class="frame" name="frame" frameborder="0" src="<?php echo $pagina; ?>" allowTransparency="true" scrolling="no" width="200" height="200"></iframe>
</body>
</html>

Code voor een php bestand waabij je alléén ?pagina=a, be of c kunt zetten om die in het frame te krijgen (en als je dat niet doe krijg je start.htm):
PHP:
<?php
$presets = array(
            "a" => "google.nl",
            "b" => "yahoo.nl",
            "c" => "helpmij.nl",
            // Voeg telkens een regel toe om meer presets toe te voegen
            );
            
$startpagina = 'start.htm';
 
 
// Pagina bepalen
$x = $_GET['pagina'];
 
if(isset($presets["$x"])) 
{
    if(strpos($presets["$x"], 'http://')) 
    {
    $pagina = $presets["$x"];
    } 
    else 
    {
    $pagina = 'http://' . $presets["$x"];
    }    
} 
else 
{
    $pagina = $startpagina;
}
 
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
 
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Titel</title>
<link href="css.css" rel="stylesheet" type="text/css" />
 
</head>
<body>
 
<iframe class="frame" name="frame" frameborder="0" src="<?php echo $pagina; ?>" allowTransparency="true" scrolling="no" width="200" height="200"></iframe>
</body>
</html>

Just

PS: Ik merkte dat jij (Jorryt) 000webhost gebruikt, mocht je eens geïnterreseert zijn in goede goedkope hosting kan ik mijnhostingpartner.nl zeker aanbevelen (het totaal pakket), ik ben er erg tevreden over!
 
Laatst bewerkt:
Ik ben nu bezig met een fatsoenlijk portfolio te maken. Totdat die 100% af klaar en gemaakt is, gebruik ik nog even een gratis webhost. Hoe kwam je daar eigenlijk achter?

Voor je code met url, moet je niet de ; vergeten achter $x = $_Get dinges. Die had je er zelf ook al een keer ingezet. Dat moet natuurlijk wel.

Succes met je website ;)
 
Is goed, en dat wist ik van deze vraag van jou.
En sorry, die ; was ik even vergeten, ik heb het verandert!
En jij succes met je portfolio, ben wel benieuwd
Just
 
Laatst bewerkt:
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan