2013-02-13 2 views
1

Я могу вызывать значения выпадающего списка из базы данных, но я не могу сохранить выбранное значение в новой строке в базе данных. Может кто-нибудь, пожалуйста, скажите мне, где я ошибаюсь?Как добавить выбранное значение из выпадающего списка в базу данных?

if (isset($_POST["addDestination"]) && $_POST["addDestination"]=="yes") 
{ 
    $countriesName=$_POST["countriesName"]; 
    $Name=$_POST["Name"]; 
    $photo=$_POST["photo"]; 
    $description=$_POST["description"]; 
    $Airport=$_POST["Airport"]; 
    $Airport2=$_POST["Airport2"]; 
    $Airline=$_POST["Airline"]; 
    $Airline2=$_POST["Airline2"]; 
    $Airline3=$_POST["Airline3"]; 
    $Airline4=$_POST["Airline4"]; 

    $dbQuery= "INSERT INTO destinations VALUES(NULL, '$countriesName', '$Name', '$photo', '$description', '$Airport', '$Airport2', '$Airline', '$Airline2', '$Airline3', '$Airline4')"; 
    $result= mysql_query($dbQuery,$db); 

HTML-код и код PHP, который называют значение из базы данных:

<form id="addDestination" name="addDestination" method="post" action="addDestination.php"> 
    <input type="hidden" name="addDestination" value="yes"> 
    <div id="countriesName" class="info"><span class="formLabel">Country (Please select one of the following)</span><br> 
    <?php 
     echo "<p></p>"; 
     $dbQuery="SELECT Name FROM countries order by name asc"; 
     $dbResult=mysql_query($dbQuery); 
     echo "<select name=\"Name\">"; 
     while ($dbRow=mysql_fetch_array($dbResult)) { 
     $Name=$dbRow["Name"]; 
     echo "<option value='$Name'>$Name</option>"; 
     } 
     echo "</select>"; 
     echo "<p> </p>"; 
    ?> 
    </div> 

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

+1

Попробуйте запустить $ result = mysql_query ($ dbQuery, $ db) или умереть (mysql_error()), чтобы увидеть, какую ошибку он показывает. Это поможет отладить. –

+0

Ваш вопрос немного запутанный, какое значение вы пытаетесь представить в базу данных? – samayo

+0

Извините, должно было бы объяснить лучше. Я хочу, чтобы можно было выбрать название страны из раскрывающегося списка, которое я могу заполнить из таблицы стран в базе данных, но когда я выбираю страну для добавления в таблицу адресатов, поле остается пустым. Я надеюсь, что это снова вызывает сожаление –

ответ

2

Я думаю, что это может быть, а не:

$countriesName=$_POST["countriesName"]; 

вам может понадобиться использовать:

$countriesName=$_POST["Name"]; 

"Name" это имя вашего фактического HTML выбора, а не "countriesName", который является содержащий дела.

+0

Я также заметил, что у вас уже есть имя, отправленное в POST, поэтому вам, возможно, придется переименовать свой тег HTML select, например. назовите его cName и выберите это из переменной POST. – chalkysteve

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