#php
#php
Вопрос:
Мне нужно вставить выбранное значение первичный ключ, который будет вставлен в качестве внешнего ключа в другую таблицу, но ни то, ни другое не выдает ошибку, и ничего не происходит, я заполнил выпадающий список формой ниже
<form id="country" name="form1" method="post" action="datatodb.php">
<table border="1">
<tr>
<td>
Select Country :<select name="countryname">
<?php
include 'dblogin.php';
// Get records from database (table "name_list").
$list=mysql_query("select * from _countries");
// Show records by while loop.
while($row_list=mysql_fetch_assoc($list)){
?>
<option value="<?php echo $row_list['countryid']; ?>"><?php echo $row_list['countryname']; ?></option>
<?php
// End while loop.
}
?>
</select> </td></tr>
<tr><td>
Add Location :
<input type="text" name="locationname" value="" maxlength="40"/></td></tr>
<tr><td align="center">
<input type="submit" name="Submit" value="Add" size="20"/></td></tr></table>
</form>
С помощью приведенного ниже кода я фиксирую значения и пытаюсь вставить первичный ключ
выбранное значение в другой таблице, где оно является внешним ключом
<?php
include 'dblogin.php';
$countryid=$_POST['countryname'];
$locationname=$_POST['locationname'];
$countryid = stripslashes($countryid);
$locationname = stripslashes($locationname);
$countryid = mysql_real_escape_string($countryid);
$locationname = mysql_real_escape_string($locationname);
$sql="insert into _location (locationid, locationname, countryid) values ('NULL','".$locationname."','".$locationname."')";
$result=mysql_query($sql);
?>
Пожалуйста, помогите мне получить первичный ключ выбранного значения и вставить его в другую таблицу, где это внешний ключ
Ответ №1:
если вы выполняете автоматическое приращение locationid
как, вам не нужно добавлять это значение в запрос,
сделайте как
$sql="insert into _location (locationname, countryid) values
('".$locationname."','".$countryid."')";
примечание: чтобы игнорировать повторяющиеся значения locationname
, установите это поле как уникальное
РЕДАКТИРОВАТЬ: у вас ошибка с опечаткой, вы пытаетесь вставить locationname
дважды, я заменяю его
Комментарии:
1. Дорогой Хаим, по-прежнему ничего не вставляется, пожалуйста, все помощники понимают, что мне нужно вставить выбранное значение из выпадающего списка primary key в другую таблицу в качестве внешнего ключа
2. какую ошибку вы получаете? if (!mysql_query($sql, $link)) { echo mysql_errno($link) . «: » . mysql_error($link) . «n»; }
3. ошибки нет, но когда я выбираю таблицу в режиме mysql dos, таблица пуста
4. вставить в _location (locationid, locationname, countryid) значения (‘NULL’,'».$locationname.»‘,'».$locationname.»‘)»; чтобы —— вставить в _location (locationid, locationname, countryid) значения (‘NULL’,'».$locationname.»‘,'».$countryid.»‘)».;
5. извините, но где знак, на который нужно нажать