2015-03-26 4 views
-1

Привет, Я делаю быструю PHP-программу, которая принимает целое число (x) и печатает числа от 1 до этого числа.PHP Hello World Program

  • Если число делится на 3, напечатайте «Hello».
  • Если число делится на 7, напечатайте «Мир».
  • Если число делится на 3 & 7, напечатайте "Hello World".

Выход ничего.

$var = 0; 
if (isset($_POST['submit'])) 
{ 
    for ($i = 1; $i < $var; $i++) 
    { 
      if ($var % 3 == 0) 
      { 
      echo 'Hello' . "\n"; 
      }   

      if ($var % 7 == 0)    
      { 
      echo 'World'. "\n"; 
      } 

      if (($var % 7 == 0) && ($var % 3 == 0)) 
      { 
      echo 'Hello World'. "\n"; 
      } else { 
      echo ""; 
      } 
    }  
} 
+0

Вы должны сделать 'еще {эхо 'ничего'; } ', чтобы быть уверенным, что вы входите в цикл' for'. – D4V1D

+0

Вы знаете, что вы получите несколько примеров «Hello Hello World» и «World Hello World»? –

+0

я удалил его :) –

ответ

2

Ваш $ вар всегда = 0. И вы должны проверить, если ($ Var% 7 == 0) & & ($ Var% 3 == 0) в первом и добавить еще если. Потому что здесь if ($ var% 7 == 0) & & ($ var% 3 == 0) выход будет Hello World Hello World. Будет выполнено все if.

Вот правильный код:

if (isset($_POST['submit'])) 
{ 
    $var = $_POST['var']; 
    for ($i = 1; $i < $var; $i++) 
     { 
      if (($var % 7 == 0) && ($var % 3 == 0)) 
      { 
      echo 'Hello World'. "\n"; 
      } 
      else if ($var % 3 == 0) 
      { 
      echo 'Hello' . "\n"; 
      }   
      else if ($var % 7 == 0)    
      { 
      echo 'World'. "\n"; 
      }   
      else { 
      echo "Nothing"; 
      } 
     }  
    } 
+0

Upvote для указания порядка выписки 'if'. – D4V1D

+1

'$ var = $ _POST ['submit'];' должно быть '$ var = $ _POST ['var'];' в соответствии с их '' –

+0

Благодарим за upvote :) И для POST var вы правы, я просто взял то же имя var. – hornfl4kes

4

Если вы разместили правильный код (то есть без опечатки), это нормально, выход ничего.

Посмотрите на то, что Вы писали:

$var = 0; 

Тогда вы делаете

for ($i = 1; $i < $var; $i++) {} 

Не удивительно, почему ничего не выводится. Это точно так же, как делают

for ($i = 1; $i < 0; $i++) {} 

$i никогда не < в 0. Поэтому цикл for никогда не запускается.

Вам необходимо установить $var, чтобы сохранить вход пользователя из формы отправки.

+0

У вашего ответа больше информации, чем у меня и было быстрее. +1 :) – Albzi

+0

Спасибо за upvote :) – D4V1D

Смежные вопросы