鍍金池/ 問(wèn)答/PHP  數(shù)據(jù)庫(kù)  HTML/ HTML提交表單時(shí),只有有中文,都不能正常添加進(jìn)數(shù)據(jù)庫(kù),純數(shù)字可以,在mysql

HTML提交表單時(shí),只有有中文,都不能正常添加進(jìn)數(shù)據(jù)庫(kù),純數(shù)字可以,在mysql窗口中手動(dòng)添加又可以添加有中文的信息.

圖片描述
圖片描述

<?php
    header("Content-type:text/html;charset=utf-8");
     
    $stuId=$_POST['stuId'];
    $stuName=$_POST['stuName'];
    $stuChinese=$_POST['stuChinese']; 
    $stuMath=$_POST['stuMath'];
    $stuEnglish=$_POST['stuEnglish']; 
    echo $stuName;
    $con=mysql_connect('localhost','root','');
    echo $con ? '數(shù)據(jù)庫(kù)連接成功' : '數(shù)據(jù)庫(kù)連接失敗'; 
    
    /*
    if(!$con){
        echo '連接失敗';
        exit;
    }else{
        echo '連接成功';
    }*/
    mysql_select_db('db_student');    
    $sql = "INSERT INTO table_student VALUES($stuId,$stuName,'$stuChinese','$stuMath','$stuEnglish')";
    //$sql = "INSERT INTO table_student(id,name,chinese,math,english)" . "VALUES($stuId,$stuName,$stuChinese,$stuMath,$stuEnglish)";   
   // $sql="insert into moneytb (riqi,item,inout,cost,bz) ". "values '$riqi','$item','$inout','$cost','$bz')";
    $is_ok = mysql_query($sql);
    if($is_ok == true){
        echo '添加成功';
         
    }else{
         
        echo '添加失敗'; 
    }
    echo $sql;
?>
<HTML> 
<HEAD> 
<TITLE>添加學(xué)生成績(jī)界面</TITLE> 
<meta charset="utf-8">
 
</HEAD> 
<BODY> 
<h1>添加學(xué)生界面</h1>
    <script type="text/javascript"></script>
    <form action="http://localhost/mysql/insertStudent.php" method="post">
        學(xué)生編號(hào)<input type="text" name="stuId"><br>
        學(xué)生姓名<input type="text" name="stuName"><br>
        語(yǔ)文成績(jī)<input type="text" name="stuChinese"><br>
        數(shù)學(xué)成績(jī)<input type="text" name="stuMath"><br>
        英語(yǔ)成績(jī)<input type="text" name="stuEnglish"><br>
        <input type="submit" value="添加成績(jī)">
    </form>
</BODY> 
</HTML>
回答
編輯回答
雨萌萌

$sql = "INSERT INTO table_student VALUES($stuId,$stuName,'$stuChinese','$stuMath','$stuEnglish')"; 中的$stuId,$stuName都是加上單引號(hào)試一試

2017年2月13日 15:22
編輯回答
野橘

// 增加下這個(gè)utf8編碼試試
mysql_query("set names 'utf8'");

mysql_select_db('db_student');

2018年6月4日 01:59
編輯回答
嘟尛嘴

在mysql命令行中可以正常提交,但是在代碼中不能提交的話,一般是編碼的問(wèn)題。你要確定一下是否都為UTF-8的編碼的格式。

另外,mysql_connect 自PHP 5.5.0 起已廢棄,并在自 PHP 7.0.0 開(kāi)始被移除。應(yīng)使用 MySQLi 或 PDO_MySQL 擴(kuò)展來(lái)替換之。

你換用PDO或者M(jìn)ysqli重寫(xiě)一遍吧,都廢棄了,沒(méi)必要糾結(jié)。

2018年7月16日 16:37
編輯回答
笑忘初

有可能是編碼問(wèn)題,跟樓上一樣先統(tǒng)一編碼。
還有mysql_connect已經(jīng)廢棄了在php7里面,建議使用mysqli或者pdo的方式進(jìn)行操作

2017年8月2日 18:33