[PHP] Een fout in een ander script

Post hier alle vragen rond HTML, PHP, MySQL, Javascript, Perl etc., plaats hier sitechecks.of vraag om linkpartners
Plaats reactie
Gebruikersavatar
ndm
Moderator
Moderator
Berichten: 369
Lid geworden op: 21 feb 2006 22:55
Locatie: Steenbergen
Contacteer:

[PHP] Een fout in een ander script

Bericht door ndm » 09 jun 2006 19:33

Wat is hier fout aan, hij werkt niet maar geeft geen errors

Code: Selecteer alles

<html>
<title>
kleurendwissel
</title>
<?php
if ($bg == null)
{
    $bg = "white";
    $font = "black";
}
else
{
    $bg = '$_post["kleur"]';
    $font = '$_post["tkleur"]';
}

echo "<head>
      <style>
      body {background-color: $bg;} 
      * {color: #000000;};
      </style>
      <head/>
      </body>
    ";
?>
<p>
<form name="form" action="datumkleuren2.php" method="post">
<select name="kleur">
<option value="red">rood</option>
<option value="green">groen</option>
<option value="yellow">geel</option>
<option value="blue">blauw</option>
<option value="gray">grijs</option>
<option value="black">zwart</option>
<option value="white">wit</option>
</select>
<select name="tkleur">
<option value="red">rood</option>
<option value="green">groen</option>
<option value="yellow">geel</option>
<option value="blue">blauw</option>
<option value="gray">grijs</option>
<option value="black">zwart</option>
<option value="white">wit</option>
</select>
<input type="submit" value="oke">
</p>
<br />Kleuren test
</form>
    
</body>
</html>
Afbeelding

Gebruikersavatar
ktf
Beheerder
Beheerder
Berichten: 1229
Lid geworden op: 14 feb 2006 21:47
Contacteer:

Bericht door ktf » 09 jun 2006 21:34

Nou, dat lijkt me toch duidelijk. Waar komt opeens die variabele $bg vandaan? Die wordt nergens aangegeven, en dat zorgt ervoor dat de achtergrond altijd wit met zwarte letters is.

Ook vergeet je de variabele $bg ergens te gebruiken. En ik snap niet waarom je een stylesheet gebruikt.

Maak ervan:

Code: Selecteer alles

<html> 
<title> 
kleurenwissel 
</title> 
<?php 
if(isset($_POST['kleur'])) 
{ 
    $bg = '$_POST["kleur"]'; 
    $font = '$_POST["tkleur"]'; 
} 
else 
{ 
    $bg = "white"; 
    $font = "black";  
} 

echo "<head> 
         </head> 
      <body bgcolor='" . $bg . "' text='" . $font . "'> 
    "; 
?> 
<p>


etc.
Verbruik van mijn laptopje+randapparatuur:
Gemiddeld: 27,1W (non-stop gemeten, 95 dagen lang)
Maximaal: 101W
Kosten per jaar: 23,76 euro (bij 10 cent per kWh)

Gebruikersavatar
ndm
Moderator
Moderator
Berichten: 369
Lid geworden op: 21 feb 2006 22:55
Locatie: Steenbergen
Contacteer:

Bericht door ndm » 11 jun 2006 16:35

hij dot het nog steeds niet hoor
Afbeelding

Gebruikersavatar
ktf
Beheerder
Beheerder
Berichten: 1229
Lid geworden op: 14 feb 2006 21:47
Contacteer:

Bericht door ktf » 11 jun 2006 20:26

Ow, sorry, ik heb er nog een laten zitten.

Dus wordt het:

Code: Selecteer alles

<html> 
<title> 
kleurenwissel 
</title> 
<?php 
if(isset($_POST['kleur'])) 
{ 
    $bg = $_POST["kleur"]; 
    $font = $_POST["tkleur"]; 
} 
else 
{ 
    $bg = "white"; 
    $font = "black";  
} 

echo "<head> 
         </head> 
      <body bgcolor='" . $bg . "' text='" . $font . "'> 
    "; 
?> 
<p>


etc.
Verbruik van mijn laptopje+randapparatuur:
Gemiddeld: 27,1W (non-stop gemeten, 95 dagen lang)
Maximaal: 101W
Kosten per jaar: 23,76 euro (bij 10 cent per kWh)

Gebruikersavatar
Gastje33
Gebruiker
Gebruiker
Berichten: 11
Lid geworden op: 19 feb 2006 21:28

Bericht door Gastje33 » 05 jul 2006 17:55

De eerste fout zit al in de tweede regel, namelijk dat je de <title> niet in de <head> zet.
$_POST moet zover ik weet met hoofdletters.

Code: Selecteer alles

<html>
<head>
<title>
kleurendwissel
</title>
</head>

<?php
$font = $_POST['kleur'];
$bg = $_POST['tkleur'];

if (!$font)
   $font = 'black';

if (!$bg)
   $bg = 'white';

echo "<body style=\"background-color: " . $bg . "; color: " . $font . "\">";
?>

{rest van pagina}
Zo hoort het als het goed is ook te werken ;)

Plaats reactie