Php mysql\u real\u escape\u字符串在其他服务器上不起作用
我试图在代码中使用mysql\u real\u escape\u字符串。它在本地主机上运行良好。然而,它在其他服务器上显示错误。我怎样才能找到解决方案呢?有人能给我解决方案吗?我的代码出了什么问题Php mysql\u real\u escape\u字符串在其他服务器上不起作用,php,Php,我试图在代码中使用mysql\u real\u escape\u字符串。它在本地主机上运行良好。然而,它在其他服务器上显示错误。我怎样才能找到解决方案呢?有人能给我解决方案吗?我的代码出了什么问题 <?php $username = "abcdb"; $password = "Abc@2014"; $hostname = "abcdb.db.9135182.hostedresource.com"; $db = "abcdb"; $dbhandle = mysql_connect($ho
<?php
$username = "abcdb";
$password = "Abc@2014";
$hostname = "abcdb.db.9135182.hostedresource.com";
$db = "abcdb";
$dbhandle = mysql_connect($hostname, $username, $password) or die("Unable to connect to MySQL");
mysql_select_db($db,$dbhandle) or die('cannot select db');
//connection to the database
$name="";
$email="";
$batch="";
$mobile="";
if (isset($_POST['submit'])) {
$error = "";
if (!empty($_POST['name'])) {
$name = mysql_real_escape_string($_POST['name']);
} else {
$error .= "You didn't type in your name. <br />";
}
if (!empty($_POST['email'])) {
$email =mysql_real_escape_string($_POST['email']);
if (!preg_match("/^[_a-z0-9]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,3})$/i", $email)){
$error .= "The e-mail address you entered is not valid. <br/>";
}
} else {
$error .= "You didn't type in an e-mail address. <br />";
}
if (!empty($_POST['batch'])) {
$batch =mysql_real_escape_string($_POST['batch']);
if (!preg_match('/^[0-9]{4}$/', $batch)) {
$error .= "Enter a valid batch. <br/>";
}
}
else {
$error .= "You didn't type batch. <br />";
}
if(($_POST['code']) == $_SESSION['code']) {
$code = $_POST['code'];
} else {
$error .= "The captcha code you entered does not match. Please try again. <br />";
}
if (!empty($_POST['mobile'])) {
$mobile =mysql_real_escape_string($_POST['mobile']);
if (!preg_match('/^[0-9]{10}$/', $mobile)) {
$error .= "Enter a valid Mobile number. <br/>";
}
}else {
$error .= "You didn't type your Mobile Number. <br />";
}
研究如何使用预先准备好的语句,例如mysqli-。mysql\u real\u escape\u字符串已弃用。您的服务器和本地主机mysql版本可能不同 看 另外,您刚刚发布的错误消息为您提供了线索。在调用mysql\u real\u escape\u string之前,测试您传递的参数是否为字符串
请参见哪个错误是错误?您的服务器是否接受不推荐的mysql_*命令,或者可能已安装mysqli_*或PDO命令?请发布错误!mysql库已弃用,请确保您的服务器仍然支持它,或者您可以使用mysqli/PDOI get错误警告:mysql\u real\u escape\u string期望参数1为string,资源在C:\wamp\www\test\contact1.php第323行提供