PHP代码执行但没有输出

PHP代码执行但没有输出,php,mysqli,Php,Mysqli,我试图学习使用php从mysql数据库中搜索元素 <?php if(isset($_POST['submit'])) { echo $gender=$_POST['$gender']; $connect=mysql_connect("127.0.0.1","root","", "randomdata"); if($connect) { //echo 'I am connected'; $query="SELECT * FROM random

我试图学习使用php从mysql数据库中搜索元素

<?php
if(isset($_POST['submit']))
{
     echo $gender=$_POST['$gender'];
    $connect=mysql_connect("127.0.0.1","root","", "randomdata");
    if($connect)
    {
    //echo 'I am connected';
    $query="SELECT * FROM randomtable WHERE Gender =' ".$gender . " ' ";
        echo  $query;
         $results=mysqli_query( $connect,$query);
        while($row = mysqli_fetch_array($results))
        {
            echo $row['Name']  . "<br/>" . $row['Surname']  . "<br/>" . $row['Email']  .   "<br/>" ;
        }
    }
    else
    {
        die(mysql_error());
    }
}
?>
为此,我创建了一个名为randomdata的数据库。在randomdata数据库中有一个名为randomtable的表。此表中有四列:姓名、姓氏、电子邮件和性别

<?php
if(isset($_POST['submit']))
{
     echo $gender=$_POST['$gender'];
    $connect=mysql_connect("127.0.0.1","root","", "randomdata");
    if($connect)
    {
    //echo 'I am connected';
    $query="SELECT * FROM randomtable WHERE Gender =' ".$gender . " ' ";
        echo  $query;
         $results=mysqli_query( $connect,$query);
        while($row = mysqli_fetch_array($results))
        {
            echo $row['Name']  . "<br/>" . $row['Surname']  . "<br/>" . $row['Email']  .   "<br/>" ;
        }
    }
    else
    {
        die(mysql_error());
    }
}
?>
我想按性别搜索人。为此,我尝试了以下查询

 $query="SELECT * FROM randomtable WHERE Gender =' ".$gender . " ' ";
<?php
if(isset($_POST['submit']))
{
     echo $gender=$_POST['$gender'];
    $connect=mysql_connect("127.0.0.1","root","", "randomdata");
    if($connect)
    {
    //echo 'I am connected';
    $query="SELECT * FROM randomtable WHERE Gender =' ".$gender . " ' ";
        echo  $query;
         $results=mysqli_query( $connect,$query);
        while($row = mysqli_fetch_array($results))
        {
            echo $row['Name']  . "<br/>" . $row['Surname']  . "<br/>" . $row['Email']  .   "<br/>" ;
        }
    }
    else
    {
        die(mysql_error());
    }
}
?>
我尝试了GET和POST函数。但我仍然无法获取输出。我正在用这些

<?php
if(isset($_POST['submit']))
{
     echo $gender=$_POST['$gender'];
    $connect=mysql_connect("127.0.0.1","root","", "randomdata");
    if($connect)
    {
    //echo 'I am connected';
    $query="SELECT * FROM randomtable WHERE Gender =' ".$gender . " ' ";
        echo  $query;
         $results=mysqli_query( $connect,$query);
        while($row = mysqli_fetch_array($results))
        {
            echo $row['Name']  . "<br/>" . $row['Surname']  . "<br/>" . $row['Email']  .   "<br/>" ;
        }
    }
    else
    {
        die(mysql_error());
    }
}
?>
视窗8 Wampserver 记事本++

<?php
if(isset($_POST['submit']))
{
     echo $gender=$_POST['$gender'];
    $connect=mysql_connect("127.0.0.1","root","", "randomdata");
    if($connect)
    {
    //echo 'I am connected';
    $query="SELECT * FROM randomtable WHERE Gender =' ".$gender . " ' ";
        echo  $query;
         $results=mysqli_query( $connect,$query);
        while($row = mysqli_fetch_array($results))
        {
            echo $row['Name']  . "<br/>" . $row['Surname']  . "<br/>" . $row['Email']  .   "<br/>" ;
        }
    }
    else
    {
        die(mysql_error());
    }
}
?>
我重新启动了服务器和PC,但没有任何变化。下面是我的完整代码

<?php
if(isset($_POST['submit']))
{
     echo $gender=$_POST['$gender'];
    $connect=mysql_connect("127.0.0.1","root","", "randomdata");
    if($connect)
    {
    //echo 'I am connected';
    $query="SELECT * FROM randomtable WHERE Gender =' ".$gender . " ' ";
        echo  $query;
         $results=mysqli_query( $connect,$query);
        while($row = mysqli_fetch_array($results))
        {
            echo $row['Name']  . "<br/>" . $row['Surname']  . "<br/>" . $row['Email']  .   "<br/>" ;
        }
    }
    else
    {
        die(mysql_error());
    }
}
?>
查找条目: 男性的 女的

<?php
if(isset($_POST['submit']))
{
     echo $gender=$_POST['$gender'];
    $connect=mysql_connect("127.0.0.1","root","", "randomdata");
    if($connect)
    {
    //echo 'I am connected';
    $query="SELECT * FROM randomtable WHERE Gender =' ".$gender . " ' ";
        echo  $query;
         $results=mysqli_query( $connect,$query);
        while($row = mysqli_fetch_array($results))
        {
            echo $row['Name']  . "<br/>" . $row['Surname']  . "<br/>" . $row['Email']  .   "<br/>" ;
        }
    }
    else
    {
        die(mysql_error());
    }
}
?>
试试这个

<?php
if(isset($_POST['submit']))
{
     echo $gender=$_POST['$gender'];
    $connect=mysql_connect("127.0.0.1","root","", "randomdata");
    if($connect)
    {
    //echo 'I am connected';
    $query="SELECT * FROM randomtable WHERE Gender =' ".$gender . " ' ";
        echo  $query;
         $results=mysqli_query( $connect,$query);
        while($row = mysqli_fetch_array($results))
        {
            echo $row['Name']  . "<br/>" . $row['Surname']  . "<br/>" . $row['Email']  .   "<br/>" ;
        }
    }
    else
    {
        die(mysql_error());
    }
}
?>
$query="SELECT * FROM randomtable WHERE Gender ='".$gender . "'";

在查询中删除了额外的空格

mysql\u connect应该是

问题似乎是将POST变量分配给$gender

<?php
if(isset($_POST['submit']))
{
     echo $gender=$_POST['$gender'];
    $connect=mysql_connect("127.0.0.1","root","", "randomdata");
    if($connect)
    {
    //echo 'I am connected';
    $query="SELECT * FROM randomtable WHERE Gender =' ".$gender . " ' ";
        echo  $query;
         $results=mysqli_query( $connect,$query);
        while($row = mysqli_fetch_array($results))
        {
            echo $row['Name']  . "<br/>" . $row['Surname']  . "<br/>" . $row['Email']  .   "<br/>" ;
        }
    }
    else
    {
        die(mysql_error());
    }
}
?>
当前您正在使用

<?php
if(isset($_POST['submit']))
{
     echo $gender=$_POST['$gender'];
    $connect=mysql_connect("127.0.0.1","root","", "randomdata");
    if($connect)
    {
    //echo 'I am connected';
    $query="SELECT * FROM randomtable WHERE Gender =' ".$gender . " ' ";
        echo  $query;
         $results=mysqli_query( $connect,$query);
        while($row = mysqli_fetch_array($results))
        {
            echo $row['Name']  . "<br/>" . $row['Surname']  . "<br/>" . $row['Email']  .   "<br/>" ;
        }
    }
    else
    {
        die(mysql_error());
    }
}
?>
echo $gender=$_POST['$gender'];
请尝试将此更改为

<?php
if(isset($_POST['submit']))
{
     echo $gender=$_POST['$gender'];
    $connect=mysql_connect("127.0.0.1","root","", "randomdata");
    if($connect)
    {
    //echo 'I am connected';
    $query="SELECT * FROM randomtable WHERE Gender =' ".$gender . " ' ";
        echo  $query;
         $results=mysqli_query( $connect,$query);
        while($row = mysqli_fetch_array($results))
        {
            echo $row['Name']  . "<br/>" . $row['Surname']  . "<br/>" . $row['Email']  .   "<br/>" ;
        }
    }
    else
    {
        die(mysql_error());
    }
}
?>
$gender=$_POST['gender'];
更新

<?php
if(isset($_POST['submit']))
{
     echo $gender=$_POST['$gender'];
    $connect=mysql_connect("127.0.0.1","root","", "randomdata");
    if($connect)
    {
    //echo 'I am connected';
    $query="SELECT * FROM randomtable WHERE Gender =' ".$gender . " ' ";
        echo  $query;
         $results=mysqli_query( $connect,$query);
        while($row = mysqli_fetch_array($results))
        {
            echo $row['Name']  . "<br/>" . $row['Surname']  . "<br/>" . $row['Email']  .   "<br/>" ;
        }
    }
    else
    {
        die(mysql_error());
    }
}
?>
在测试代码之后,似乎isset就是问题所在。从来没有一个帖子['Submit']

<?php
if(isset($_POST['submit']))
{
     echo $gender=$_POST['$gender'];
    $connect=mysql_connect("127.0.0.1","root","", "randomdata");
    if($connect)
    {
    //echo 'I am connected';
    $query="SELECT * FROM randomtable WHERE Gender =' ".$gender . " ' ";
        echo  $query;
         $results=mysqli_query( $connect,$query);
        while($row = mysqli_fetch_array($results))
        {
            echo $row['Name']  . "<br/>" . $row['Surname']  . "<br/>" . $row['Email']  .   "<br/>" ;
        }
    }
    else
    {
        die(mysql_error());
    }
}
?>
要解决这个问题,您需要提交输入ie中的name属性

<?php
if(isset($_POST['submit']))
{
     echo $gender=$_POST['$gender'];
    $connect=mysql_connect("127.0.0.1","root","", "randomdata");
    if($connect)
    {
    //echo 'I am connected';
    $query="SELECT * FROM randomtable WHERE Gender =' ".$gender . " ' ";
        echo  $query;
         $results=mysqli_query( $connect,$query);
        while($row = mysqli_fetch_array($results))
        {
            echo $row['Name']  . "<br/>" . $row['Surname']  . "<br/>" . $row['Email']  .   "<br/>" ;
        }
    }
    else
    {
        die(mysql_error());
    }
}
?>
<input type="submit" Value="Search" name="Submit"/>

<?php
if(isset($_POST['submit']))
{
     echo $gender=$_POST['$gender'];
    $connect=mysql_connect("127.0.0.1","root","", "randomdata");
    if($connect)
    {
    //echo 'I am connected';
    $query="SELECT * FROM randomtable WHERE Gender =' ".$gender . " ' ";
        echo  $query;
         $results=mysqli_query( $connect,$query);
        while($row = mysqli_fetch_array($results))
        {
            echo $row['Name']  . "<br/>" . $row['Surname']  . "<br/>" . $row['Email']  .   "<br/>" ;
        }
    }
    else
    {
        die(mysql_error());
    }
}
?>
根本没有输出吗?的确很奇怪

<?php
if(isset($_POST['submit']))
{
     echo $gender=$_POST['$gender'];
    $connect=mysql_connect("127.0.0.1","root","", "randomdata");
    if($connect)
    {
    //echo 'I am connected';
    $query="SELECT * FROM randomtable WHERE Gender =' ".$gender . " ' ";
        echo  $query;
         $results=mysqli_query( $connect,$query);
        while($row = mysqli_fetch_array($results))
        {
            echo $row['Name']  . "<br/>" . $row['Surname']  . "<br/>" . $row['Email']  .   "<br/>" ;
        }
    }
    else
    {
        die(mysql_error());
    }
}
?>
你在发布什么

<?php
if(isset($_POST['submit']))
{
     echo $gender=$_POST['$gender'];
    $connect=mysql_connect("127.0.0.1","root","", "randomdata");
    if($connect)
    {
    //echo 'I am connected';
    $query="SELECT * FROM randomtable WHERE Gender =' ".$gender . " ' ";
        echo  $query;
         $results=mysqli_query( $connect,$query);
        while($row = mysqli_fetch_array($results))
        {
            echo $row['Name']  . "<br/>" . $row['Surname']  . "<br/>" . $row['Email']  .   "<br/>" ;
        }
    }
    else
    {
        die(mysql_error());
    }
}
?>
您确定您的测试帖子中包含了“提交”吗

<?php
if(isset($_POST['submit']))
{
     echo $gender=$_POST['$gender'];
    $connect=mysql_connect("127.0.0.1","root","", "randomdata");
    if($connect)
    {
    //echo 'I am connected';
    $query="SELECT * FROM randomtable WHERE Gender =' ".$gender . " ' ";
        echo  $query;
         $results=mysqli_query( $connect,$query);
        while($row = mysqli_fetch_array($results))
        {
            echo $row['Name']  . "<br/>" . $row['Surname']  . "<br/>" . $row['Email']  .   "<br/>" ;
        }
    }
    else
    {
        die(mysql_error());
    }
}
?>

如果这样做没有帮助,那么可能还有更严重的错误,不允许脚本运行?您能看到php或apache错误日志吗?

我想您是想将提交索引分配给$SENDER变量,而不是SENDER索引?
<?php
if(isset($_POST['submit']))
{
     echo $gender=$_POST['$gender'];
    $connect=mysql_connect("127.0.0.1","root","", "randomdata");
    if($connect)
    {
    //echo 'I am connected';
    $query="SELECT * FROM randomtable WHERE Gender =' ".$gender . " ' ";
        echo  $query;
         $results=mysqli_query( $connect,$query);
        while($row = mysqli_fetch_array($results))
        {
            echo $row['Name']  . "<br/>" . $row['Surname']  . "<br/>" . $row['Email']  .   "<br/>" ;
        }
    }
    else
    {
        die(mysql_error());
    }
}
?>
请尝试以下代码:

<?php
if(isset($_POST['submit']))
{
     echo $gender=$_POST['$gender'];
    $connect=mysql_connect("127.0.0.1","root","", "randomdata");
    if($connect)
    {
    //echo 'I am connected';
    $query="SELECT * FROM randomtable WHERE Gender =' ".$gender . " ' ";
        echo  $query;
         $results=mysqli_query( $connect,$query);
        while($row = mysqli_fetch_array($results))
        {
            echo $row['Name']  . "<br/>" . $row['Surname']  . "<br/>" . $row['Email']  .   "<br/>" ;
        }
    }
    else
    {
        die(mysql_error());
    }
}
?>
<?php
if(isset($_POST['submit']))
{
    $gender = $_POST['submit'];
    $connect = mysql_connect("127.0.0.1", "root", "", "randomdata");
    if($connect)
    {
    $query = 'SELECT * FROM randomtable WHERE Gender = "' .$gender .'"';
        $results = mysqli_query($connect, $query);
        while($row = mysqli_fetch_array($results))
        {
            echo $row['Name']  . "<br/>" . $row['Surname']  . "<br/>" . $row['Email']  .   "<br/>" ;
        }
    }
    else
    {
        die(mysql_error());
    }
}
?>


我复制了这个摘录,并用它替换了我以前的查询。没有任何变化。根据@The Humble Rat change echo$gender=$\u POST['$gender'];至$SEXT=$_POST['SEXT']@托马斯:我试过你的建议了。很抱歉,一切都没有改变。我也重新启动了服务器。打印您的查询并在phpmyadmin中运行它。然后检查一切是否正常?可能将$\u POST['$gender']更改为$\u POST['gender']?在黑暗中射击。可能您的$SEXT参数是空的。@user3168766是的,您正在将$SEXT放入POST['$SEXT']中。您通过POST方法获得的表单不是phpvariable@Rana穆罕默德·瓦卡斯:我解决了我的问题,谢谢你们的合作。@Rana Muhammad Waqas回答说,有绿色标志,对我很有帮助。是的,我包括提交。如果设置$\u POST['submit'],你可以看到这个。只是检查一下,有时很容易错过。如果它不存在,那么它会解释为什么没有其他东西在运行。如果您需要澄清,请在问题下方添加注释。@chandrayya-g-k我试过,有人告诉我我的代表还不够高。我会更加努力的…我可以给你发送完整的代码。如果你想看的话。这是一个由34行组成的小代码。@user3168766请在您的问题中提供完整的代码,同时请提供一份POST数据的打印件,这样我们可以确保一切都如预期的那样。@user3168766还请说明如何在表中保存性别,即M/F或男/女。这可能就是问题所在。我救了男男女女。查找条目:男性女性我没有收到任何输出。