我有这个代码,当我点击按钮"关闭"状态总是关闭但是在db中
例如
我点击数据库设置中的galery查询为value = 1(打开),但状态显示为关闭
如果我点击仍然说是关闭
show.php
<?php
$mysqli = new mysqli("localhost", "root", "pass", "strona");
//----------
function topnews()
{
$query="SELECT topnews FROM opcje";
$topnews=$result=mysql_query($query);
if($topnews == 1)
{
echo "<div id='on'>wlączone</div>";
}
else if($topnews == 0)
{
echo "<div id='off'>wyłączone</div>";
}
}
//------------
function galeria()
{
$query2="SELECT galeria FROM opcje";
$galeria=$result=mysql_query($query2);
if($galeria == 1)
{
echo "<div id='on'>wlączone</div>";
}
else
{
echo "<div id='off'>wyłączone</div>";
}
}
//--------------
function logowanie()
{
$query3="SELECT logowanie FROM opcje";
$logowanie=$result=mysql_query($query3);
if($logowanie == 1)
{
echo "<div id='on'>wlączone</div>";
}
else
{
echo "<div id='off'>wyłączone</div>";
}
}
//--------------
function rejestracja()
{
$query4="SELECT rejestracja FROM opcje";
$rejestracja=$result=mysql_query($query4);
if($rejestracja == 1)
{
echo "<div id='on'>wlączone</div>";
}
else
{
echo "<div id='off'>wyłączone</div>";
}
}
$mysqli->close();
?>
<form action="onoff.php" method="post">
<tr>
<td><p><h3>Okienka na głównej</h3></p><hr></td>
</tr>
<tr>
<td>Status<br></td>
<td><?php topnews(); ?><br></td>
<td><input type="submit" value="wlacz" name="on"/></td>
<td><input type="submit" value="wylącz" name="off"/></td>
</tr>
<tr>
<td><p><h3><hr>Galeria</h3></p><hr></td>
</tr>
<tr>
<td>Status<br></td>
<td><?php galeria(); ?><br></td>
<td><input type="submit" value="wlacz" name="on2"/></td>
<td><input type="submit" value="wylącz" name="off2"/></td>
</tr>
<tr>
<td><p><h3><hr>Logowanie</h3></p><hr></td>
</tr>
<tr>
<td>Status<br></td>
<td><?php logowanie(); ?><br></td>
<td><input type="submit" value="wlacz" name="on3"/></td>
<td><input type="submit" value="wylącz" name="off3"/></td>
</tr>
<tr>
<td><p><h3><hr>Rejestracja</h3></p><hr></td>
</tr>
<tr>
<td>Status<br></td>
<td><?php rejestracja(); ?><br></td>
<td><input type="submit" value="wlacz" name="on4"/></td>
<td><input type="submit" value="wylącz" name="off4"/></td>
</tr>
</form>
onoff.php
<?php
$con=mysqli_connect("localhost","root","pass","strona");
// Check connection
if (mysqli_connect_errno()) {
echo "Błąd podczas łączenia z bazą danych: " . mysqli_connect_error();
}
//===========//top news//===============//
if(isset($_POST['on']))
{
$on = $_POST['on'];
$sql = "UPDATE opcje SET topnews = '1'";
echo "<script>alert('Włączono Pomyslnie');</script>";
header("Refresh: 1; url=wlwyl.php");
}
else if(isset($_POST['off']))
{
$off = $_POST['off'];
$sql = "UPDATE opcje SET topnews = '0'";
echo "<script>alert('Wyłączono Pomyslnie');</script>";
header("Refresh: 1; url=wlwyl.php");
}
//===========//galeria//===============//
if(isset($_POST['on2']))
{
$on2 = $_POST['on2'];
$sql = "UPDATE opcje SET galeria = '1'";
echo "<script>alert('Włączono Pomyslnie');</script>";
header("Refresh: 1; url=wlwyl.php");
}
else if(isset($_POST['off2']))
{
$off2 = $_POST['off2'];
$sql = "UPDATE opcje SET galeria = '0'";
echo "<script>alert('Wyłączono Pomyslnie');</script>";
header("Refresh: 1; url=wlwyl.php");
}
//===========//logowanie//===============//
if(isset($_POST['on3']))
{
$on3 = $_POST['on'];
$sql = "UPDATE opcje SET logowanie = '1'";
echo "<script>alert('Włączono Pomyslnie');</script>";
header("Refresh: 1; url=wlwyl.php");
}
else if(isset($_POST['off3']))
{
$off3 = $_POST['off'];
$sql = "UPDATE opcje SET logowanie = '0'";
echo "<script>alert('Wyłączono Pomyslnie');</script>";
header("Refresh: 1; url=wlwyl.php");
}
//===========//rejestracja//===============//
if(isset($_POST['on4']))
{
$on4 = $_POST['on'];
$sql = "UPDATE opcje SET rejestracja = '1'";
echo "<script>alert('Włączono Pomyslnie');</script>";
header("Refresh: 1; url=wlwyl.php");
}
else if(isset($_POST['off4']))
{
$off4 = $_POST['off'];
$sql = "UPDATE opcje SET rejestracja = '0'";
echo "<script>alert('Wyłączono Pomyslnie');</script>";
header("Refresh: 1; url=wlwyl.php");
}
//============//kiedys cos//==============//
if (!mysqli_query($con,$sql)) {
die('Error: ' . mysqli_error($con));
}
mysqli_close($con);
?>
答案 0 :(得分:3)
您的代码中包含大量内容:
if($topnews = 1)
这不是您想要做的 - 它将1
的值分配给$topnews
,因此此if
语句始终为true且始终为true执行。您正在寻找:
if($topnews == 1)
现在,在你的代码上:
$topnews=$result=mysql_query($query);
You shouldn't be using mysql_*
functions anymore。但是,$topnews
的值是MySQL结果对象,并且没有来自数据库的值。你需要获取它,类似于:
$result = mysql_query( $query);
$row = mysql_fetch_array($result);
$topnews = $row['topnews'];
答案 1 :(得分:0)
您使用的是错误的比较运算符。 在if语句中使用==或===。
为了使它更安全,交换常量和变量!
if (1 == $galeria)
比
更安全if ($galeria == 1)