2013-11-26 4 views
0

Я хотел бы сделать Somthing как этотУстановка вар в MySQL и использовать в новом запросе

$tagNo = 12345; 
mysql_query("var = SELECT `jobNo` FROM `Jobs` WHERE `tagNo`='".$tagNo."'; 
INSERT INTO `Locations` (`jobNo`,`tagNo`,`name`) VALUES (var, '".$tagNo."', 'blah')"); 

это может быть сделано?

+1

[** Пожалуйста, не используйте '' * mysql_ функции в новом коде * *] (http://bit.ly/phpmsql). Они больше не поддерживаются [и официально устарели] (https://wiki.php.net/rfc/mysql_deprecation). См. [** красное поле **] (http://j.mp/Te9zIL)? Узнайте о [* подготовленных операторах *] (http://j.mp/T9hLWi) и используйте [PDO] (http://php.net/pdo) или [MySQLi] (http://php.net/ mysqli) - [эта статья] (http://j.mp/QEx8IB) поможет вам решить, какой из них. Если вы выберете PDO, [здесь хороший учебник] (http://j.mp/PoWehJ). – h2ooooooo

+1

Вы пробовали? –

+0

да, но не var – SHIN

ответ

0

Вы не можете назначить переменные, как это, но вы можете достичь именно то, что вы после этого, используя синтаксис INSERT...SELECT:

mysql_query("INSERT INTO `Locations` (`jobNo`, `tagNo`, `name`) 
      SELECT `jobNo`, '".$tagNo."', 'blah' FROM `Jobs` WHERE `tagNo`='".$tagNo."'"); 

Но as has been explained in the comments, don't use mysql_* functions in new code.

+0

Работает! Спасибо – user3032474

0

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

вы можете попробовать это

$tagNo = '12345'; 
$var = mysql_query("SELECT `jobNo` FROM `Jobs` WHERE `tagNo`='".$tagNo."' "); 
$row = mysql_fetch_array($var) ; 

    mysql_query("INSERT INTO `Locations` (`jobNo`,`tagNo`,`name`) 
        VALUES ('".$row['jobNo']."' , '".$tagNo."', 'blah')"); 

, но это очень плохая идея, используя MySQL, вместо того, чтобы использовать PDO или MySQLi

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