Задать вопрос
20ivs
@20ivs
Пользователь пока ничего не рассказал о себе.

Как исправить ошибки при переезде с PHP5 на PHP7?

Доброго времени суток, уважаемые знатоки!
Сразу предупрежу - в PHP полный ноль!
Решил вот перевезти небольшой внутренний справочник со старой Debian 7 с PHP5 на свежую версию. Вполне ожидаемо, что возникнут сложности с PHP. Некоторые проблемы удалось решить гуглением, а некоторые никак не поддаются. Прошу помощи зала, как говорится.
Итак, имеется вот такой код:
Код
<?php
					if ($_GET['set'] == search){
						$zapros = $_POST['textsearch'];
						if (strlen($zapros)<3) echo 'Недостаточная длина строки для поиска';
						else {
							echo 'Результаты для <' . $zapros . '>:<br>';
							$poisk = mysqli_query("SELECT * FROM `spravochnik`
							WHERE (surname LIKE '%$zapros%'
							or name LIKE '%$zapros%'
							or patronymic LIKE '%$zapros%'
							or job_title LIKE '%$zapros%'
							or number LIKE '%$zapros%'
							or cabinet LIKE '%$zapros%'
							or email LIKE '%$zapros%')
							ORDER BY surname");
							if ($poisk == 0) echo 'По вашему запросу нет совпадений<br>';
							else {
								echo '<table id="one-column-emphasis">
										<thead>
											<tr>
												<th scope="col">Фото</th>
												<th scope="col">Сотрудник</th>
												<th scope="col">Должность</th>
												<th scope="col">Служебный телефон</th>
												<th scope="col">Кабинет</th>
												<th scope="col">E-mail</th>
											</tr>
										</thead>';
							$sprav_array = mysqli_fetch_assoc($poisk);
								while($sprav_array = mysqli_fetch_assoc($poisk))
								{
									echo '<tbody><tr>';
									echo '<td><img src="photos/' . $sprav_array["photo"] . '" alt="фото" width="50" class="zoom"></td>';
									echo '<td>' . $sprav_array["surname"] . ' ' . $sprav_array["name"] . ' ' . $sprav_array["patronymic"] . '</td>' ;
									echo '<td>' . $sprav_array["job_title"] . '</td>';
									echo '<td>' . $sprav_array["number"] . '</td>';
									echo '<td>' . $sprav_array["cabinet"] . '</td>';
									echo '<td>' . $sprav_array["email"] . '</td>';
									echo '</tr></tbody>';
								}
								echo '</table>';
							}
						}
					}
					?>

Получаю вот такие ошибки:
Undefined index: set in /var/www/index.php on line 39
Use of undefined constant search - assumed 'search' (this will throw an Error in a future version of PHP) in /var/www/index.php on line 39

Строка 39 это и есть if ($_GET['set'] == search){

Подскажите, пожалуйста, что не так с этим кодом?
  • Вопрос задан
  • 167 просмотров
Подписаться 1 Простой Комментировать
Решения вопроса 2
Rst0
@Rst0
if ($_GET['set'] == 'search'){
Ответ написан
@Akela_wolf
Extreme Programmer
Ну так в массиве нет индекса 'set'
Корректно будет так:
if (isset($_GET['set']) && $_GET['set'] == 'search') ...
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы