2012-07-20 133 views
0

嗨,我的代码如下。更新多个记录mysql

我想要做的是更新mysql中满足特定特定条件的所有值。现在,当我只需键入mysql查询:

UPDATE `$DBNAME`.`video` SET `Secret_key` = '0' 

该查询工作正常,但我似乎无法编写将执行此操作的PHP代码。 任何帮助,欢迎

<?php 
    // Part 1 (works fine) 
    include("/home3/kintest2/public_html/include/config.local.php"); 
    $connect= mysql_connect ($DBHOST,$DBUSER,$DBPASSWORD); 
    $select= mysql_select_db($DBNAME, $connect); 
    // End of Part 1 

    // Part 2 (works fine) 
    $test2= "SELECT * FROM `video`"; 
    $results= mysql_query($test2, $connect); 
    $num_rows = mysql_num_rows($results); 
    // End of part 2 

    // Part 3 (Not too sure about this part) 
    for ($num_rows= $count; $count >= 0; $count--) 
    { 
    mysql_query("UPDATE `$DBNAME`.`video` SET `Secret_key` = '0'",$connect); 
    } 
    // End of part 3 (Not too sure about this part) 


    ?> 

回答

0
<?php 
     // Part 1 (works fine) 
     include("/home3/kintest2/public_html/include/config.local.php"); 
     $connect= mysql_connect ($DBHOST,$DBUSER,$DBPASSWORD); 
     $select= mysql_select_db($DBNAME, $connect); 
     // End of Part 1 

     //no need of part 2 to update records in table 
     //part 3 loop removed 
     mysql_query("UPDATE `$DBNAME`.`video` SET `Secret_key` = '0' ",$connect); 


?> 

试试这个。愿它能解决你的问题。

+0

谢谢它的作品:) – 2012-07-20 03:33:40

0

对于初学者我会带查询圈外(和刚删除的循环)。如果仍然不起作用,请尝试对数据库名称进行硬编码。如果这不起作用,请确保$connect是您认为的。查找mysql_query()并确保您使用的是正确的。

如果你尝试了上面的所有内容,你会发现问题或至少弄清楚问题不在。

+0

哦,并尝试删除所有的代码,除了有问题的连接和UPDATE查询。尽可能多的移动部件。 – 2012-07-20 02:42:36

+0

谢谢杰森斯威特。我已经尝试过你所说的那就是我为什么将它们分别命名的原因。因为每个部分都经过测试(不包括循环)。你知道更好的方法来实现吗? – 2012-07-20 02:47:28

+0

对不起,我不知道你在问什么。我不知道你的意思是“这个”。 – 2012-07-20 14:43:18