Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/database/8.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_Database - Fatal编程技术网

Php 仅当';如果状态为';是正确的

Php 仅当';如果状态为';是正确的,php,database,Php,Database,我下面的PHP代码用于医院设置,我希望应用程序仅在房间号等于1时插入数据,如果房间号等于2或任何其他数字,我希望它返回错误。有人能告诉我怎么修吗?谢谢 if($room_number = '1'){ $mysql_qry = "insert into patients2 (patient_name, doctor_name, check_in_date, room_number, bed_number, notes, time) values ('$patient_na

我下面的PHP代码用于医院设置,我希望应用程序仅在房间号等于1时插入数据,如果房间号等于2或任何其他数字,我希望它返回错误。有人能告诉我怎么修吗?谢谢

if($room_number = '1'){
    $mysql_qry = "insert into patients2
    (patient_name, doctor_name, check_in_date, room_number, bed_number, notes, time) 
    values ('$patient_name', '$doctor_name', '$check_in_date', '$room_number', '$bed_number', '$notes', '$time')";
}

else if($room_number != '1'{
        echo "Error: " . $mysql_qry . "<br>" . $conn->error;
}                  

if($conn->query($mysql_qry) === TRUE) {
    echo "Insert successful";
}
if($room\u number='1'){
$mysql\u qry=“插入患者2
(患者姓名、医生姓名、入住日期、房间号、床位号、备注、时间)
值(“$patient\u name”、“$doctor\u name”、“$check\u in\u date”、“$room\u number”、“$bed\u number”、“$notes”、“$time”);
}
如果($房间号!='1'{
echo“Error:.$mysql\u qry.”
“$conn->Error; } if($conn->query($mysql\u qry)==TRUE){ 回显“插入成功”; }
如果($room\u number=='1'){
$mysql\u qry=“插入患者2
(患者姓名、医生姓名、入住日期、房间号、床位号、备注、时间)
值(“$patient\u name”、“$doctor\u name”、“$check\u in\u date”、“$room\u number”、“$bed\u number”、“$notes”、“$time”);
}
其他的
{
echo“Error:.$mysql\u qry.”
“$conn->Error; }
如果($room\u number=='1'){
$mysql\u qry=“插入患者2
(患者姓名、医生姓名、入住日期、房间号、床位号、备注、时间)
值(“$patient\u name”、“$doctor\u name”、“$check\u in\u date”、“$room\u number”、“$bed\u number”、“$notes”、“$time”);
}
其他的
{
echo“Error:.$mysql\u qry.”
“$conn->Error; }
您应该在第一个条件下执行查询,否则会显示错误:

if($room_number == '1') {
    $mysql_qry = "insert into patients2
    (patient_name, doctor_name, check_in_date, room_number, bed_number, notes, time) 
    values ('$patient_name', '$doctor_name', '$check_in_date', '$room_number', '$bed_number', '$notes', '$time')";

    if($conn->query($mysql_qry) === TRUE) {
        echo "Insert successful";
    } else {
        echo "Error: " . $mysql_qry . "<br>" . $conn->error;
    }
}

else {
    echo "Error: Room number value must be 1.";
}   
if($room\u number=='1'){
$mysql\u qry=“插入患者2
(患者姓名、医生姓名、入住日期、房间号、床位号、备注、时间)
值(“$patient\u name”、“$doctor\u name”、“$check\u in\u date”、“$room\u number”、“$bed\u number”、“$notes”、“$time”);
if($conn->query($mysql\u qry)==TRUE){
回显“插入成功”;
}否则{
echo“Error:.$mysql\u qry.”
“$conn->Error; } } 否则{ echo“错误:房间号值必须为1。”; }

如果($room_number='1'),也要注意你的行
,在这种情况下,你是用一个
=
将值赋给你的变量,而不是将它与两个
=

进行比较。你应该在第一个条件下执行你的查询,否则会显示一个错误:

if($room_number == '1') {
    $mysql_qry = "insert into patients2
    (patient_name, doctor_name, check_in_date, room_number, bed_number, notes, time) 
    values ('$patient_name', '$doctor_name', '$check_in_date', '$room_number', '$bed_number', '$notes', '$time')";

    if($conn->query($mysql_qry) === TRUE) {
        echo "Insert successful";
    } else {
        echo "Error: " . $mysql_qry . "<br>" . $conn->error;
    }
}

else {
    echo "Error: Room number value must be 1.";
}   
if($room\u number=='1'){
$mysql\u qry=“插入患者2
(患者姓名、医生姓名、入住日期、房间号、床位号、备注、时间)
值(“$patient\u name”、“$doctor\u name”、“$check\u in\u date”、“$room\u number”、“$bed\u number”、“$notes”、“$time”);
if($conn->query($mysql\u qry)==TRUE){
回显“插入成功”;
}否则{
echo“Error:.$mysql\u qry.”
“$conn->Error; } } 否则{ echo“错误:房间号值必须为1。”; }

如果($room\u number='1')
,请注意您的行
,在这种情况下,您是使用一个
=
将值赋值到变量中,而不是将其与两个
=

进行比较。首先,您的条件是错误的。您没有检查
$room\u number
是否等于1,而是赋值字符串“1”您需要2个
=
符号来进行比较,或者需要3个
=
符号来进行严格的比较。请在此处阅读更多信息:

其次,您需要调整您的逻辑。您正在检查房间号是否等于1,然后在else中阻塞检查房间号是否不等于1,冗余检查。仅当房间号不等于1时,才会执行else,因此无需再次检查。最后,您执行查询,而不管
$room\u number
值。移动该值底部if,插入第一个if的主体中。如下所示:

<?php
if ($room_number === "1") {
    $mysql_qry = "insert into patients2
        (patient_name, doctor_name, check_in_date, room_number, bed_number, notes, time) 
        values ('$patient_name', '$doctor_name', '$check_in_date', '$room_number', '$bed_number', '$notes', '$time')";

    if($conn->query($mysql_qry) === TRUE) {
        echo "Insert successful";
    } else {
        echo "Error: " . $mysql_qry . "<br>" . $conn->error;
    }
} else {
    echo "Room number does not equal 1";
}

首先,您的条件是错误的。您不是在检查
$room\u number
是否等于1,而是在为该变量指定字符串“1”。您需要2个
=
符号来进行比较,或者3个
=
符号来进行严格的比较。请在此阅读更多信息:

其次,您需要调整您的逻辑。您正在检查房间号是否等于1,然后在else中阻塞检查房间号是否不等于1,冗余检查。仅当房间号不等于1时,才会执行else,因此无需再次检查。最后,您执行查询,而不管
$room\u number
值。移动该值底部if,插入第一个if的主体中。如下所示:

<?php
if ($room_number === "1") {
    $mysql_qry = "insert into patients2
        (patient_name, doctor_name, check_in_date, room_number, bed_number, notes, time) 
        values ('$patient_name', '$doctor_name', '$check_in_date', '$room_number', '$bed_number', '$notes', '$time')";

    if($conn->query($mysql_qry) === TRUE) {
        echo "Insert successful";
    } else {
        echo "Error: " . $mysql_qry . "<br>" . $conn->error;
    }
} else {
    echo "Room number does not equal 1";
}

将其从if($room\u number='1')改为if($room\u number='1')。首先,您没有分配将值与
$room\u number='1'进行比较的值。
,=is assignment operation for the response gues,我已对其进行了排序将其从if($room\u number='1')改为if($room\u number='1'))首先,您没有分配您正在将valuestry与
$room\u number==“1”
,=进行比较的值,是响应人员的助理操作员,我已经分类了。我,谢谢,代码现在可以工作了,我将接受您的答案。谢谢您的帮助!很高兴帮助您;-)嗨,谢谢,代码现在可以工作了,我将接受您的答案。谢谢你的帮助!很高兴帮助你;-)谢谢你的回复和帮助,上面的问题已经回答了!谢谢你的回复和帮助,上面的问题已经回答了!