【问题标题】:different result multiple query with rand boolean mysql and php使用rand boolean mysql和php的不同结果多次查询
【发布时间】:2013-05-02 22:59:45
【问题描述】:

我需要给出不同的结果:

  1. 你可以吃三明治。
  2. 你可以吃三明治,但不能吃甜甜圈。
  3. 你可以吃甜甜圈和饮料。

整个东西必须随机挑选。

问题是结果。

首先我必须创建一个 mysql 数据库布尔表,其中包含

 +-------------------------------------+
 |  ids|name | sandwich | donuts| drink|
 |   1 | josh|    1     |   1   |   1  |
 |   2 | john|    0     |   1   |   0  |
 |   3 | mike|    1     |   0   |   0  |
 |   4 | mic |    0     |   1   |   1  |
 +=====================================+

我在 php 中编写了一些代码,但似乎第一个目标没问题,但第二个目标有问题。问题是第二个。有人不能一边吃三明治一边吃甜甜圈。。 我从第二个得到的结果是它显示了吃甜甜圈的人的名单,而不是我想要的。

代码有问题吗?..

这是我完成的 php 代码..

    <?php
$host="localhost"; // Host name
$username="root"; // Mysql username
$password=""; // Mysql password
$db_name="test1"; // Database name
$tbl_name="skill"; // Table name


// Connect to server and select database.
mysql_connect("$host", "$username", "$password")or die("cannot connect");
mysql_select_db("$db_name")or die("cannot select DB");

$sql="SELECT ids, name FROM skill WHERE sandwich='1' ORDER BY rand() LIMIT 3";
$result=mysql_query($sql);
?>
eat sandwich is
<?
while($rows=mysql_fetch_assoc($result)){
echo $rows['name']."<br>";}?>


<br>
eat donut
<?
$sql1="SELECT ids, name FROM skill WHERE donuts='1' ORDER BY rand() LIMIT 3";
$result1=mysql_query($sql1);
?>
<?

while($rows1=mysql_fetch_assoc($result1)){
    if ($result <> $result1)
    {echo $rows1['name'];}
    else
    {echo nono;}
}?>

【问题讨论】:

  • 家庭作业的目的是让去做。
  • @Dagon 如果他想每天找一个经理,那没关系,更愿意让其他人做
  • 什么是nono?是有错字还是常数?
  • @Dagon 如果你知道答案,请帮助我..
  • 我不确定是什么问题。是while循环还是它自己的查询?

标签: php mysql boolean


【解决方案1】:

我不知道你在用 while 循环做什么。将限制表达为 WHERE 子句,即使它非常冗长,例如:

SELECT ... FROM users
  WHERE (sandwich='1' AND donuts!='1')
    OR (sandwich='0')
  ORDER BY RAND()

对选择行的任何其他限制都可以在其中分层。

请注意,除非绝对必须,否则不要在新代码中使用mysql_query。它已从 PHP 中删除,因为它在使用不当时非常过时且不安全。

【讨论】:

  • 非常感谢先生.. 谢谢.. 看来我有很多东西要学.. 感谢您的指导.. 非常感谢您的帮助.. 实际上我使用 while 循环如果 rand 的限制大于 1,则表示名称的各种随机数。再次感谢先生。如果需要帮助,将再次发布问题。
猜你喜欢
  • 1970-01-01
  • 2015-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-02-15
  • 1970-01-01
  • 2015-02-09
  • 2013-06-23
相关资源
最近更新 更多