Intereting Posts
Есть ли у PHP конструкция, подобная DataSet .NET? PHPMailer использовать Gmail как SMTP-сервер. Не удалось подключиться к узлу SMTP. Ошибка Mailer: ошибка SMTP: не удалось подключиться к SMTP-хосту POST для PHP из Node.js Как установить разрешения по умолчанию для новых файлов, созданных с помощью php Исключение исключения в обработчике исключений Создайте альбом Picasa и загрузите на него изображения с помощью PHP и cURL Как я могу создать реферальную систему в PHP? Угловая – $ http.delete возвращает успех, но не работает Использование PHP и нового API Twitter Почему этот php apache_request_headers не работает на IIS 7 Преобразование штрихов в CamelCase в PHP Рекомендации для статических конструкторов Как показать цену продажи или обычную цену woocommerce, если нет цены продажи Показать изображение с помощью file_get_contents Laravel 4.1 Запуск миграции и настройка конфигурации из зависимостей пакетов

Если isset для нескольких кнопок отправки

Интересно, может ли кто-нибудь помочь мне.

Я пытаюсь запустить код ниже, который я использую с формой с несколькими submit buttons .

 <?php if (isset($_POST['type']){ if ($_POST['type'] == 'view'){ $url = 'updatelocation.php'; } elseif ($_POST['type'] == 'finds'){ $url = 'addfinds.php'; } elseif ($_POST['type'] == 'image'){ header("Location: " . $url); } ?> 

Проблема, с которой я сталкиваюсь, заключается в том, что когда я запускаю это, я получаю следующую ошибку:

Parse error: syntax error, unexpected '{' in /homepages/2/d333603417/htdocs/locationsaction.php on line 2

Я читал некоторые уроки, например, это , и мой код, похоже, соответствует примеру, поэтому я не уверен, где ошибка.

Для получения дополнительной информации кнопки и форма, которые я использую для запуска скрипта php, показаны ниже:

 <form name="locations" id="locations" method="post" action="locationsaction.php"> <td><div align="center"><input name="viewdetails" type="submit" value="view"/></div>/td> <td><div align="center"><input name="addfinds" type="submit" value="finds"/></div></td> <td><div align="center"><input name="addimages" type="submit" value="images"/></div></td> 

Я просто задавался вопросом, может ли кто-нибудь посмотреть на это, и сообщите мне, где я ошибаюсь?

Related of "Если isset для нескольких кнопок отправки"

Вам не хватает закрывающей круглой скобки:

 if (isset($_POST['type']) { 

Должно быть:

 if (isset($_POST['type'])) { 

Вам также не хватает закрывающей скобки на последней строке. Вы действительно должны пытаться форматировать и отступать свой код должным образом. Это значительно облегчит выявление таких ошибок. Рассмотрим этот пример:

 <?php if (isset($_POST['type'])) {  if ($_POST['type'] == 'view') {  $url = 'updatelocation.php';  } elseif ($_POST['type'] == 'finds') {    $url = 'addfinds.php';  } elseif ($_POST['type'] == 'image'){ $url = 'image.php'; }  header("Location: " . $url); } 

Другой способ сделать поиск – использовать карту:

 <?php if (isset($_POST['type'])) { $urls = array( 'view' => 'updatelocation.php', 'finds' => 'addfinds.php', 'image' => 'image.php' ); $url = $urls[$_POST['type']]; header("Location: " . $url); } 

Это довольно чисто – не так ли? Добавление нового случая в это просто вопрос добавления его в массив.

Вам не хватает a ) после isset($_POST['type']) – вы не закрываете оператор if .

Вам также не хватает закрывающей скобки:

  if (isset($_POST['type'])){ if ($_POST['type'] == 'view'){ $url = 'updatelocation.php'; }elseif ($_POST['type'] == 'finds'){ $url = 'addfinds.php'; }elseif ($_POST['type'] == 'image'){ $url='image.php'; } header("Location: " . $url); }