PHP的select下拉列表取值无法存入数据库?

PHP的select下拉列表取值无法存入数据库?,第1张

建议这样调试,在帖子的最后一个语句($sql="insert into text1 values('$id')")之后添加下面的三行:

echo "正在执行SQL: $sql<BR>\n"

if (mysql_query($sql)) echo "成功。"

else echo "失败:".mysql_error()

这样就会知道数据库查询执行是否成功,如果失败还会显示失败的具体原因,这个原因是分析程序非常重要的因素。

SELECT 语句用于从数据库中选取数据。

语句1:SELECT * FROM table_name

解说:意思就是读取整个表table_name里面的数据显示出来

语句1:SELECT * FROM table_name Where x = 1

解说:意思就是读取表table_name里面键名为:x 值为:1的 数据显示出来

例子:

<?php

$con = mysql_connect("localhost","peter","abc123")

if (!$con)

{

die('Could not connect: ' . mysql_error())

}

mysql_select_db("my_db", $con)

$result = mysql_query("SELECT * FROM Persons")

while($row = mysql_fetch_array($result))

{

echo $row['FirstName'] . " " . $row['LastName']

echo "<br />"

}

mysql_close($con)

?>

数据库采用UTF8编码,而页面申明编码是GB2312,这是最常见的产生乱码的原因。

这时候在PHP脚本里面直接SELECT数据出来的就是乱码,需要在查询前先使用:

mysql_query("SET NAMES GBK")或mysql_query("SET NAMES GB2312")

来设定MYSQL连接编码,保证页面申明编码与这里设定的连接编码一致(GBK是GB2312的扩展)。如果页面是UTF-8编码的话,可以用:

mysql_query("SET NAMES UTF8")注意是UTF8而不是一般用的UTF-8。假如页面申明的编码与数据库内部编码一致可以不设定连接编码。

代码如下:

$mysql_mylink = mysql_connect($mysql_host, $mysql_user, $mysql_pass)

mysql_query("SET NAMES 'GBK'")


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/6759031.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-03-27
下一篇 2023-03-27

发表评论

登录后才能评论

评论列表(0条)

保存