Проблем с кода

kalo150

Registered
Когато натисна option не ме праща на опции. Къде ми е грешката?

Код:
<?php
if(!isset($_POST['color']) || $_POST['color'] == '')
	$_POST['color'] = 'black';

if(!isset($option))
	$option = 0;

if(isset($_POST['name']) && $_POST['name'] != ''){
	$name = $_POST['name'];
?>
	<font color="<?php echo $_POST['color'] ?>"> Vasheto ime e <?php echo $name; ?><br>
	<a href="<?php unset($name);?>">Back</a>
<?php
}else if($option == 1){
?>
<form action="<?php $option=0; ?>" method="POST">
	<input type="radio" name="color" value="green">Green<br>
	<input type="radio" name="color" value="red">Red<br>
	<input type="radio" name="color" value="blue">Blue<br>
	<input type="radio" name="color" value="yellow">Yellow<br>
	<input type="radio" name="color" value="">None<br>
	<input type="submit">
</form>
<?php
}else{ 
?>

<html>
<body>
<?php

	if(isset($_POST['name']) && $_POST['name'] == ''){	
		echo 'Molq, vuvedete ime! <br>';
	}
?>
<form action="" method="POST">
<input type="text" name="name">
<input type="submit">
</form>
<a href="<?php $option=1; ?>">Option</a>

</body>
</html>

<?php  
} 
?>
 
Е ти какво очакваш?
Направил си един линк
<a href="<?php $option=1; ?>">Option</a>
все едно си направил така
<a href="1">Option</a>

а в началото на скрипта очакваш ей така от небето да падне една променлива $option. Използвай $_GET['option'] вместо $option

Замести твоя код с това, би трябвало да се получи:

PHP:
<?php 
if(!isset($_POST['color']) || $_POST['color'] == '') 
   $_POST['color'] = 'black'; 

if(!isset($_GET['option']))
   $option = 0;

if(isset($_POST['name']) && $_POST['name'] != ''){ 
   $name = $_POST['name']; 
?> 
   <font color="<?php echo $_POST['color'] ?>"> Vasheto ime e <?php echo $name; ?><br> 
   <a href="<?php unset($name);?>">Back</a> 
<?php 
}else if($option){ 
?> 
<form action="<?=$_SERVER['PHP_SELF']?>" method="POST"> 
   <input type="radio" name="color" value="green">Green<br> 
   <input type="radio" name="color" value="red">Red<br> 
   <input type="radio" name="color" value="blue">Blue<br> 
   <input type="radio" name="color" value="yellow">Yellow<br> 
   <input type="radio" name="color" value="">None<br> 
   <input type="submit"> 
</form> 
<?php 
}else{ 
?> 

<html> 
<body> 
<?php 

   if(isset($_POST['name']) && $_POST['name'] == ''){    
      echo 'Molq, vuvedete ime! <br>'; 
   } 
?> 
<form action="" method="POST"> 
<input type="text" name="name"> 
<input type="submit"> 
</form> 
<a href="<?=$_SERVER['PHP_SELF']?>?option=1">Option</a> 

</body> 
</html> 

<?php  
} 
?>
 

Back
Горе