PHP连接MySQL的2种方法小结以及防止乱码
文件大小: 38k
源码售价: 10 个金币 积分规则     积分充值
资源说明:PHP的MySQL配置 报错信息:Class ‘mysqli’ not found in Answer:1.在conf/php.ini中,在vim用”/php_mysql”搜索到extension=php_mysql.dll,去掉前面的”;”, 同时在下面增加extension=php_mysqli.dll; 注意后面那个dll多了个i2.”/extension_dir”检查路径是否正确; 3.找到ext/目录,把其中的php_mysql.dll,php_mysqli.dll两个文件Copy to %systemroot%/system32下. 4.重启服务 连接数据库复制代码 代码如下: / 在PHP中连接MySQL数据库是开发Web应用程序的基本操作。本文将总结两种主要的连接方法,并讨论如何防止出现乱码问题。 1. **使用mysqli扩展** - `mysqli` 是MySQL Improved Extension的缩写,是PHP中用于连接MySQL数据库的推荐方法。在PHP中,如果你收到“Class ‘mysqli’ not found”的错误,说明mysqli扩展未启用。 - 你需要在`php.ini`文件中启用mysqli扩展。通过`/php_mysql`搜索,取消`extension=php_mysql.dll`前的分号(";"),并在其下方添加`extension=php_mysqli.dll`。确保`extension_dir`设置正确,指向PHP扩展所在的目录。 - 接着,将`ext/`目录下的`php_mysql.dll`和`php_mysqli.dll`文件复制到`%systemroot%\system32`目录。 - 重启服务,然后可以使用以下代码连接MySQL数据库: ```php $mysqli = new mysqli("127.0.0.1", "用户名", "密码", "库名"); $mysqli->query("SET NAMES 'gb2312'"); // 防止乱码 ``` 使用`$mysqli`对象执行SQL查询,例如:`$result = $mysqli->query($query);` 2. **使用mysql扩展(已废弃)** - 虽然`mysql`扩展在较早的PHP版本中被广泛使用,但现在已被弃用,建议使用mysqli或PDO。如果仍然需要使用,配置过程与mysqli类似,但需要注意的是,此扩展在PHP 7中已被移除。 - 下面是使用mysql扩展连接MySQL的例子: ```php $con = mysql_connect("localhost", "用户名", "密码"); if ($con) { mysql_query("set names 'gb2312'"); // 防止乱码 mysql_select_db("库名", $con); $rs = mysql_query("select * from 表 order by theindex desc;", $con); if ($rs) { echo ""; while ($row = mysql_fetch_assoc($rs)) { echo ""; } mysql_free_result($rs); } mysql_close($con); } ``` **防止乱码的方法** - 在连接数据库时,使用`SET NAMES`语句设置字符集,例如`SET NAMES 'gb2312'`。这确保了数据在传输过程中采用正确的编码,避免乱码问题。 - 确保数据库、表和字段的字符集设置与应用程序保持一致。通常推荐使用`utf8`或`utf8mb4`,以支持更多的Unicode字符。 - 在HTML中使用``声明页面编码,确保浏览器正确解析内容。 **总结** - PHP连接MySQL的两种主要方法是mysqli扩展和已废弃的mysql扩展。mysqli提供更好的功能和面向对象的接口,而mysql扩展虽然简单,但不推荐新项目使用。 - 乱码问题通常由于字符集不匹配引起,确保在数据库连接、数据传输和页面显示时使用相同的字符集设置。 - 正确配置PHP环境和使用推荐的扩展能提高代码的稳定性和安全性。当遇到问题时,应首先检查配置文件和服务器设置,然后调整代码以适应需求。
本源码包内暂不包含可直接显示的源代码文件,请下载源码包。
$row[theindex]$row[name]