Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/71.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 值仅传递给单个数据库或条件。困惑的_Php_Mysql - Fatal编程技术网

Php 值仅传递给单个数据库或条件。困惑的

Php 值仅传递给单个数据库或条件。困惑的,php,mysql,Php,Mysql,我的数据库项目中有两个表,即y2011_2012和y2012_2013 现在,我已经创建了一个带有以下代码的搜索框: <form action="includes/usn_search.php" method="post"> <input type="search" id="usn_search" name="usn_search"> </form> 现在,我尝试使用php从两个表中检索数据,代码如下: //1.Create a database

我的数据库项目中有两个表,即y2011_2012和y2012_2013

现在,我已经创建了一个带有以下代码的搜索框:

<form action="includes/usn_search.php" method="post">
    <input type="search" id="usn_search" name="usn_search">
</form>

现在,我尝试使用php从两个表中检索数据,代码如下:

//1.Create a database connection
$connection = mysql_connect("127.0.0.1","root",DB_PASS);
if(!$connection)
{
    die("Database connection failed: " . mysql_error());    
}

//2.Select a database to use
$db_select = mysql_select_db("fyproject",$connection);
if(!$db_select){
    die("Database selection failed: " . mysql_error());
}

//load
$usn = strtoupper($_POST["usn_search"]);

    if($usn == ($result1= mysql_query("SELECT usn1 OR usn2 OR usn3 OR usn4 FROM y2011_2012 WHERE usn1=\"$usn\" OR usn2=\"$usn\" OR usn3=\"$usn\" OR usn4=\"$usn\"", $connection)))
    {

        $result1 = mysql_query("SELECT * FROM y2011_2012 WHERE usn1=\"$usn\" OR usn2=\"$usn\" OR usn3=\"$usn\" OR usn4=\"$usn\"", $connection);
        if(!$result1){
                die("Database query failed: ". mysql_error());
            }

        while($row = mysql_fetch_array($result1)){

            echo "<head><title>".$row["filename"]."</title></head>";
            echo "<body>";
                echo "<h2><center>".$row["filename"]."</center></h2>";
                echo $row["usn1"]."&nbsp;&nbsp;&nbsp;".$row["name1"]."<br />";
                echo $row["usn2"]."&nbsp;&nbsp;&nbsp;".$row["name2"]."<br />";
                echo $row["usn3"]."&nbsp;&nbsp;&nbsp;".$row["name3"]."<br />";
                echo $row["usn4"]."&nbsp;&nbsp;&nbsp;".$row["name4"]."<br />";
                echo "<h3><center>"."Abstract"."</center></h3>"."<br />";
                echo $row["content"]."<br />";
            echo "</body>";
            }
    }

    else if($usn == ($result2= mysql_query("SELECT usn1 OR usn2 OR usn3 OR usn4 FROM y2012_2013 WHERE usn1=\"$usn\" OR usn2=\"$usn\" OR usn3=\"$usn\" OR usn4=\"$usn\"", $connection)))
    {

        $result2 = mysql_query("SELECT * FROM y2012_2013 WHERE usn1=\"$usn\" OR usn2=\"$usn\" OR usn3=\"$usn\" OR usn4=\"$usn\"", $connection);
        if(!$result2){
            die("Database query failed: ". mysql_error());
        }

        while($row = mysql_fetch_array($result2))
        {

            echo "<head><title>".$row["filename"]."</title></head>";
            echo "<body>";
                echo "<h2><center>".$row["filename"]."</center></h2>";
                echo $row["usn1"]."&nbsp;&nbsp;&nbsp;".$row["name1"]."<br />";
                echo $row["usn2"]."&nbsp;&nbsp;&nbsp;".$row["name2"]."<br />";
                echo $row["usn3"]."&nbsp;&nbsp;&nbsp;".$row["name3"]."<br />";
                echo $row["usn4"]."&nbsp;&nbsp;&nbsp;".$row["name4"]."<br />";
                echo "<h3><center>"."Abstract"."</center></h3>"."<br />";
                echo $row["content"]."<br />";
            echo "</body>";
        }
    }

    else {
        echo "Not found!";
    }
//1.创建数据库连接
$connection=mysql\u connect(“127.0.0.1”,“root”,DB\u PASS);
如果(!$connection)
{
die(“数据库连接失败:”.mysql_error());
}
//2.选择要使用的数据库
$db\u select=mysql\u select\u db(“fyproject”,$connection);
如果(!$db\u选择){
die(“数据库选择失败:”.mysql_error());
}
//装载
$usn=strtoupper($_POST[“usn_search”]);
如果($usn==($result1=mysql\ U查询(“从2011年至2012年选择usn1或usn2或usn3或usn4,其中usn1=\“$usn\”或usn2=\“$usn\”或usn3=\“$usn\”,$connection)))
{
$result1=mysql\u查询(“从2011年\u 2012年选择*,其中usn1=\“$usn\”或usn2=\“$usn\”或usn3=\“$usn\”或usn4=\“$usn\”,$connection);
如果(!$result1){
die(“数据库查询失败:”.mysql_error());
}
而($row=mysql\u fetch\u数组($result1)){
回显“$行[“文件名]”;
回声“;
回显“$行[“文件名]”;
echo$row[“usn1”]。$row[“name1”]。“
”; echo$row[“usn2”]。$row[“name2”]。“
”; echo$row[“usn3”]。$row[“name3”]。“
”; echo$row[“usn4”]。$row[“name4”]。“
”; 回声“,”摘要“,”
; echo$row[“content”]。“
”; 回声“; } } else if($usn==($result2=mysql\u查询(“从2012\u 2013年选择usn1或usn2或usn3或usn4,其中usn1=\“$usn\”或usn2=\“$usn\”或usn3=\“$usn\”或usn4=\“$usn\”,$connection))) { $result2=mysql\u查询(“从2012\u 2013年选择*其中usn1=\“$usn\”或usn2=\“$usn\”或usn3=\“$usn\”或usn4=\“$usn\”,$connection); 如果(!$result2){ die(“数据库查询失败:”.mysql_error()); } while($row=mysql\u fetch\u数组($result2)) { 回显“$行[“文件名]”; 回声“; 回显“$行[“文件名]”; echo$row[“usn1”]。$row[“name1”]。“
”; echo$row[“usn2”]。$row[“name2”]。“
”; echo$row[“usn3”]。$row[“name3”]。“
”; echo$row[“usn4”]。$row[“name4”]。“
”; 回声“,”摘要“,”
; echo$row[“content”]。“
”; 回声“; } } 否则{ 回声“找不到!”; }

现在,每当我尝试输入第一个表中的USN时,我都会无缝地获得所需的输出。。但是假设我把当前的值放在第二个表中,我得到的是一个空白页。。没有来自php的错误页面或最后一个显示“未找到”的回音。。我猜这个值不会传递到第二个else if条件,但我不知道为什么??请帮助我,我真的不明白if子句在代码中是如何工作的。在if子句中,将变量与关联数组进行比较,而关联数组将永远不会相同。所以从技术上讲,它不应该起作用。我修改了你的代码,你能试着运行这个吗

<?php
//1.Create a database connection
$connection = mysql_connect("127.0.0.1","root",DB_PASS);
if(!$connection){
    die("Database connection failed: " . mysql_error());    
}

//2.Select a database to use
$db_select = mysql_select_db("fyproject",$connection);
if(!$db_select){
    die("Database selection failed: " . mysql_error());
}

//load
$usn = strtoupper(mysql_real_escape_string($_POST["usn_search"]));

    $result1 = mysql_query("SELECT * FROM y2011_2012 WHERE usn1=\"$usn\" OR usn2=\"$usn\" OR usn3=\"$usn\" OR usn4=\"$usn\"", $connection);
    $result2 = mysql_query("SELECT * FROM y2012_2013 WHERE usn1=\"$usn\" OR usn2=\"$usn\" OR usn3=\"$usn\" OR usn4=\"$usn\"", $connection);

    if(mysql_num_rows($result1)>0){
        while($row = mysql_fetch_array($result1)){
            echo "<head><title>".$row["filename"]."</title></head>";
            echo "<body>";
                echo "<h2><center>".$row["filename"]."</center></h2>";
                echo $row["usn1"]."&nbsp;&nbsp;&nbsp;".$row["name1"]."<br />";
                echo $row["usn2"]."&nbsp;&nbsp;&nbsp;".$row["name2"]."<br />";
                echo $row["usn3"]."&nbsp;&nbsp;&nbsp;".$row["name3"]."<br />";
                echo $row["usn4"]."&nbsp;&nbsp;&nbsp;".$row["name4"]."<br />";
                echo "<h3><center>"."Abstract"."</center></h3>"."<br />";
                echo $row["content"]."<br />";
            echo "</body>";
            }
    }
    else if(mysql_num_rows($result2)>0){
        while($row = mysql_fetch_array($result2)){
            echo "<head><title>".$row["filename"]."</title></head>";
            echo "<body>";
                echo "<h2><center>".$row["filename"]."</center></h2>";
                echo $row["usn1"]."&nbsp;&nbsp;&nbsp;".$row["name1"]."<br />";
                echo $row["usn2"]."&nbsp;&nbsp;&nbsp;".$row["name2"]."<br />";
                echo $row["usn3"]."&nbsp;&nbsp;&nbsp;".$row["name3"]."<br />";
                echo $row["usn4"]."&nbsp;&nbsp;&nbsp;".$row["name4"]."<br />";
                echo "<h3><center>"."Abstract"."</center></h3>"."<br />";
                echo $row["content"]."<br />";
            echo "</body>";
        }
    }else {
        echo "Not found!";
    }
?>


y2011\u 2012和y2012\u 2013是表还是数据库?@akhil非常抱歉。。这些是tables@RaHuL-我能看看你的表格结构和一些数值吗?太棒了!!!我接受了你的回答,认为这很有用。。非常感谢你。。我会尽力理解你到底做了什么。。我不熟悉php和mysql