自己在写项目,发现一个问题无法解决
我点击添加疑难单词就应该执行sql语句,但是它就是没反应
我想把单词插入疑难单词分类就是插不进去
require_once('conn.php');
?>
<html>
<head>
<title>单词内容title>
<link rel="stylesheet" type="text/css" href="css/style.css">
head>
<body>
<div class="container">
<div class="top_navigation">
<span>PHP单词管理系统span>
<ul>
<li><a href="index.php">系统首页a>li>
<li><a href="newscontent.php">最新单词a>li>
<li><a href="fl.php">单词分类a>li>
<li><a href="admin_login.php">后台管理a>li>
ul>
div>
<div class="top_banner">
<img src="images/banner3.jpg" alt="banner">
div>
<div class="news_content">
<div>
<table class="news_content_list">
if(empty($_GET['news_id']))
{
$sql1 = mysqli_query($conn,"SELECT news_id,news_title FROM news ORDER BY news_id DESC");
$info1 = mysqli_fetch_array($sql1);
$news_id = $info1['news_id'];
}
else
{
$news_id = $_GET['news_id'];
}
$sql1 = mysqli_query($conn,"SELECT * FROM news WHERE news_id=$news_id");
$info1 = mysqli_fetch_array($sql1);
?>
<tr>
<th class="tb_title">单词标题: echo $info1['news_title']?>th>
<th class="tb_date">加入时间: echo $info1['news_date']?> th>
tr>
<tr>
<td colspan="2" style="font-weight: bold">单词内容:td>
tr>
<tr>
<td colspan="2" style="text-indent: 2em;line-height: 22px;">
echo $info1['news_content']?>td>
tr>
table>
div>
div>
<input type="button" value="添加到疑难单词" name="tj" onclick="function fas() {
}
fas()">
$conn = mysqli_connect("localhost","root","123456","news");
if(!isset($_GET['tj'])){
$sql3 = mysqli_query($conn,"update news set news_type=7 where news_id=$news_id") or die('添加失败!');
}
?>
<input type="button" value="退出疑难单词" name="itj" onclick="function off() {
$conn = mysqli_connect("localhost","root","123456","news");
$news_id = $_GET['news_id'];
if(!isset($_GET['itj'])){
$sql2 = mysqli_query($conn,"update news set news_type=1 where news_id=$news_id") or die('添加失败!');
echo "";
}
?>
}
off()"/>
<div class="footer">
<p>背单词系统p>
div>
div>
body>
html>
其中添加疑难单词按钮我点击多少次都没有反应
我自己尝试过点击事件也没有反应。但是删除疑难单词是好用的,但是添加疑难单词用不了
希望可以正常添加疑难单词
题主没搞清楚前端后端并且后端逻辑有问题,删除和添加代码都会执行,先添加了,然后后面又删除了,所以最终状态该就是删除的。应该是isset,而不是!isset,判断是需要的操作才执行数据库,改下面这样,点击按钮location.href请求一次服务器执行操作
<input type="button" value="添加到疑难单词" name="tj" onclick="location.search='tj=1&news_id=<?php echo $news_id ?>">
<?php
$conn = mysqli_connect("localhost","root","123456","news");
if(isset($_GET['tj'])){/////////////注意这里,是isset,不要取反
$sql3 = mysqli_query($conn,"update news set news_type=7 where news_id=$news_id") or die('添加失败!');
}
?>
<input type="button" value="退出疑难单词" name="itj" onclick="location.search='itj=1&news_id=<?php echo $news_id ?>"/>
<?php
$conn = mysqli_connect("localhost","root","123456","news");
$news_id = $_GET['news_id'];
if(isset($_GET['itj'])){/////////////注意这里,是isset,不要取反
$sql2 = mysqli_query($conn,"update news set news_type=1 where news_id=$news_id") or die('添加失败!');
echo "<script>alert('已退出到疑难单词');</script>";
}
?>
1、添加疑难单词按钮的 onclick 事件中调用了一个名为 fas的函数,但是这个函数并没有定义。所以点击按钮后并没有任何反应。
2、退出疑难单词按钮的 onclick 事件中调用了一个名为 off 的函数,但是这个函数也并没有定义。所以点击按钮后并没有任何反应。
3、 PHP 代码中调用了 mysqli_query 函数来执行 SQL 语句,但是没有判断执行结果是否成功。如果执行失败,程序可能会报错,导致无法正常工作。
为了解决这些问题,可以尝试以下方法:
1、在添加疑难单词按钮的 onclick 事件中,定义一个函数来执行插入操作。
2、在退出疑难单词按钮的 onclick 事件中,定义一个函数来执行更新操作。
在执行 SQL 语句时,使用 mysqli_query 函数的返回值来判断执行是否成功,如果失败,可以使用 mysqli_error 函数来获取错误信息。
onclick事件写法有问题,PHP代码写的位置也有点不是很理解,你是在哪里学的这种写法?
看添加按钮那里,onclick="function fas(){} fas()",,
fas函数是空的,php相关代码在下面几行,可能复制错位置了,
不过这样写真的可以吗,我记得是onclick="fas()", 然后在< script type="text/javascript">function fas(){相关代码}< /script>这里写函数的