Сформировать массив
Требуется сформировать массив из 50 случайных чисел от 1 до 100. Создать на форме поле ввода, куда пользователь вводит число и нажимает проверить. Если число найдено в массиве то указать его индекс. Все что у меня получилось сделать, но мой код продолжает не работать.
<?php
$a = $_POST['var_name'];
$arr = $i;
for($i=0;$i<50;$i++){$mas[]=rand(1,100);}
for($i=0;$i<50;$i++){print $mas[$i];print" ";}
echo "<hr/>";
function MeDeadInside (){
for ($i=0;$i<50;$i++){
if ($a=$arr[$i]) {
echo $arr;
}
}
}
if (isset($_POST['var_name'])){
MeDeadInside();
}
?>
<form method="POST">
<input type="" name="var_name">
<input type="submit" value="Найти">
Ответы (2 шт):
Автор решения: Samurai
→ Ссылка
<form method="POST">
<input type="" name="var_name">
<input type="submit" value="Найти">
<?php
//проверяем получена ли переменная в форме
if (isset($_POST['var_name']))
{
$a = $_POST['var_name'];
echo $a;
//создаем массив и сразу проверяем совпал ли он с введенным числом
$mas = [];
echo "<br> индексы найденные<br>";
for($i=0;$i<50;$i++){
$mas[$i]=rand(1,100);
if ($mas[$i]==$a) {
echo $i."<br>";
};
};
echo "<br> вывод массива <br>";
print_r($mas);
}
?>
</body>
</html>
Автор решения: Derp
→ Ссылка
Можно также использовать и функцию если она вам была нужна
<?php
function MeDeadInside ($var,$mass){
foreach ($mass as $key=>$value){
if ($var == $value){
echo 'Индекс массива - '. $key.' Число - '.$value;
}
}
}
if (isset($_POST['check'])){
$a = $_POST['var'];
for($i=0;$i<50;$i++){
$mas[$i]=rand(1, 100);
}
MeDeadInside($a, $mas);
}
?>
<form method="post">
<input type="text" name="var">
<input type="submit" name="check" value="Проверить">
</form>