2013-06-14 5 views
0

Привет, я работаю над php и mysql.Извлечение данных вместо идентификатора данных из mysql

У меня есть форма, где я получаю доступ к данным из одной таблицы и по выбору. Я вставляю эти данные в другую таблицу. Но мое основное ограничение заключается в том, что выбранный идентификатор данных хранится вместо значения данных.

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

Ниже приведен пример кода.

<td>Status:</td> 
        <td> <select name="status" id="status"> 
      <?php $svar = mysql_query("select * from status"); 
      while($sresult = mysql_fetch_array($svar)){ ?> 
      <option value="<?php echo $sresult['id']; ?>" <?php if($sresult['id']==$row['status']){ echo "selected"; }?> /><?php echo $sresult['status']; ?></option> 
      <?php } ?> 
         </select> </td> 

Теперь я вставляя данные из данной формы в другую базу данных с помощью следующего запроса:

$sql="INSERT INTO Createticket (......,status) VALUES(..........,'$status')"; 
+0

[Пожалуйста, не используйте '' * mysql_ функции] (http://stackoverflow.com/q/12859942/1190388) в новом коде. Они больше не поддерживаются и [официально устарели] (https://wiki.php.net/rfc/mysql_deprecation). См. Красную рамку? Узнайте о подготовленных инструкциях и используйте [tag: PDO] или [tag: MySQLi]. – hjpotter92

+0

значение 'status' является' result [id] 'как установлено вашим html, если вам нужно значение, необходимое для изменения' value = '' DevZer0

+0

, поскольку атрибут value отправляется через POST , это нормально, чтобы получить идентификатор, когда у вас есть значение =

ответ

0

Хотя вы оставили из довольно кусок кода, который бы помог проверить 100% , Я думаю, что смогу сделать обоснованное предположение о том, что вы пытаетесь сделать.

Это просто потому, что вы устанавливаете значение поле выбора в качестве идентификатора, а не значение ....

Изменить эту строку:

<option value="<?php echo $sresult['id']; ?>" <?php if($sresult['id']==$row['status']){ echo "selected"; }?> /><?php echo $sresult['status']; ?></option> 

к:

<option value="<?php echo $sresult['status']; ?>" <?php if($sresult['id']==$row['status']){ echo "selected"; }?> /><?php echo $sresult['status']; ?></option> 

Таким образом, при отправке формы вы публикуете значение поля «статус», так как значение статуса не означает значение id результата $.

+0

Я думал то же самое. Я хочу добавить: '' – DanFromGermany

+0

J5Dev, который помог мне поблагодарить за Ответить. Надеюсь вернуться к вам, если я получу любые другие запросы. – MM0959

0

значение, которое вы присваиваете поле опции составляет $ sresult [ «ID»] так же идентификатор хранится во второй таблице, чтобы установить статус

заменить

value = " <?php echo $sresult['id'] ?> " 

с в oprtions подали в

value = " <?php echo $sresult['status'] ?> " 
Смежные вопросы