2014-09-08 2 views
1

У меня есть эта кнопка, я хочу сделать ее ссылкой на различные формы в зависимости от состояния. Вот что я пробовалPhp дает 2 возможные действия формы для одной кнопки

<?php 
     if($lessons=null){ 
      ?> 
      <form action="create.php" method="post"> 
       <?php } 
     else{ 
      ?> 
      <form action="k1levelselect.php" method="post"> 
       <?php } 

     ?> 

     <input type="submit" value="K1" 

$ lessons - столбец в моем столе. Если уроки не имеют ценности, я хочу перейти на «create.php», чтобы добавить уроки, иначе я хочу перейти прямо к k1levelselect.php. Но это приводит меня к k1levelselect.php независимо от того, пуст ли мой столбец или нет. Я неправильно выполняю свое заявление if else?

ответ

0

В вас текущий код, вы используете оператор присваивания:

if($lessons=null){ // using = 

вы должны использовать оператор == сравнения:

if($lessons==null){ // must be like this 

В качестве альтернативы, вы можете также использовать короткую сторону, если (тройная) на этом:

<form action="<?php echo ($lessons == null) ? 'create.php' : 'k1levelselect'; ?>" method="post"> 

Как проверить:

$db = new mysqli('localhost', 'username', 'password', 'database'); 
$query = $db->query('SELECT `lessons` FROM `lessonno`'); 
$results = $query->fetch_assoc(); 
$lessons = $results['lessons']; 
+0

Когда я использую первый предложенный метод. Он говорит: «Уведомление: неопределенная переменная: уроки». Но я уже подключил свою базу данных, почему она говорит, что мои «уроки» не определены? –

+0

@Chunkeat - это '$ lessons'? он говорит, что он не определен? от получения значения из базы данных, установите '$ lessons' соответственно – Ghost

+0

Я сделал это, $ lessons = isset ($ _ POST ['lessons'])? $ _POST ['уроки']: ''; Верно ли это? –