Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/242.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/64.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,如何通过添加上一次投票和新投票来更新我的php/mysql 例如,在mysql中。投票点是25。当我以25分再次进入时。变成了50分。情况就是这样。我的表名为“subc_eva”,冒号为id、facultyname和totalvows。如何通过添加旧点和新点来更新totalvotes <?php $host="localhost"; // Host name $username="root"; // Mysql username $password="password"; // My

如何通过添加上一次投票和新投票来更新我的php/mysql 例如,在mysql中。投票点是25。当我以25分再次进入时。变成了50分。情况就是这样。我的表名为“subc_eva”,冒号为id、facultyname和totalvows。如何通过添加旧点和新点来更新totalvotes

<?php

$host="localhost"; // Host name 
$username="root"; // Mysql username 
$password="password"; // Mysql password 
$db_name="ramon_pascual"; // Database name 
$tbl_name="subj_eva"; // Table name 

// Connect to server and select database.
mysql_connect("$host", "$username", "$password")or die("cannot connect"); 
mysql_select_db("$db_name")or die("cannot select DB");

// Get values from form 
$profname=$_POST['profname'];
$votecount=$_POST['votecount'];
$subj=$_POST['subject'];


// Insert data into mysql 
$sql = "UPDATE $tbl_name SET facultyname='$profname', totalvotes='$votecount', subjects='$subj'";

$result=mysql_query($sql);

// if successfully insert data into database, displays message "Successful". 
if($result){
echo "Successful";
echo "<BR>";
echo "<a href='indextest.php'>Back to main page</a>";
}

else {
echo "ERROR";
}
?> 

<?php 
// close connection 
mysql_close();


?>

您可以修改查询,将新值添加到当前值中。我建议事先将votecount转换为整数

$votecount = intval($votecount);
$sql = "UPDATE $tbl_name SET facultyname='$profname', totalvotes=totalvotes + $votecount, subjects='$subj'";
尝试:
$sql=“UPDATE$tbl\u name SET facultyname='$profname',totalvows=totalvows+'$votecount',subjects='$subj'

我不明白您想要什么,但总是在传输函数mysql\u real\u escape\u string()数据库中使用任何字符串变量!否则可能的Mysql注入。在双引号中,变量突出显示括号{},否则函数将给出数据库不是变量。

试试这个

$votecount=$_POST['votecount'];

$getprevious =mysql_fetch_array(mysql_query("select * from $tbl_name order by id desc"));

$previouspoint= $getprevious[0]['totalvotes'];

$votecount = intval($previouspoint) + intval($votecount);

$sql = "UPDATE $tbl_name SET facultyname='$profname', totalvotes='$votecount', subjects='$subj'";

$result=mysql_query($sql);
试着像这样使用

$query="update table_name set 'totalvotes'=(select `totalvotes` from `table_name` where id='".$id."')+'".$current_count."' where id='".$id."' ";

停止使用不推荐的
mysql.*
函数;改用PDO/MySQLi。另外,您的HTML代码非常陈旧;改用CSS。
$query="update table_name set 'totalvotes'=(select `totalvotes` from `table_name` where id='".$id."')+'".$current_count."' where id='".$id."' ";