嗨,我是PHP的新手,我听说有一种方法可以简化您的php查询代码:)
首先,我想简化插入:
-
我有一个查询
mysql_query("insert into table (
示例) values ('$sample')");
我想像公式一样简化它,您只需输入表格和值即可。这样每当我查询时,我都不会输入mysql_query等等 -
下一页 选择数据库上的数据。就像
mysql_query(select * from account where contatc='$contatc')
我想简化它,或者只是制作一个公式,每当我查询它时,我都不会再输入了。
我还读到,为了制作它,我将使用函数提前致谢
这是选择数据的示例
function check($value, $where, $database) {
//foreach($field_arr as $value);
$q=sprintf("SELECT `".$value."` FROM `".$database."` WHERE ".$where."");
if(! $data=mysql_query($q)){
return FALSE;
}
else {
return mysql_num_rows($data);
}
}
以下是执行数据库操作的函数
## Connect to Server ##
function connect($server="",$user="", $pass="")
{
$conn = mysql_pconnect($server,$user,$pass);
if(!$conn) {
echo "Connection attempt failed"." Error No:".mysql_errno()."<br>Error Message : ". mysql_error();
}
return true;
}
## Select Database for table operation ##
function selectDatabase($dbase)
{
global $conn;
if(empty($conn)) { echo "Connection not found"; }
if(!mysql_select_db($dbase, $conn)) {
echo "Dbase Select failed"." Error No:".mysql_errno()."<br>Error Message : ". mysql_error();
}
}
## Execute Select Query
function select ($sql="", $fetch = "mysql_fetch_assoc")
{
global $conn;
if(empty($sql)) { echo "Select Query not found"; }
if(empty($conn)) { echo "Connection not found";}
$results = @mysql_query($sql,$conn);
if(!$results) {
echo "Error in Query : ".$sql."<br>".mysql_errno()." : ". mysql_error();
}
$data = array();
while ($row = $fetch($results))
{
$data[] = $row;
}
mysql_free_result($results);
return $data;
}
## Execute Insert Query
function insert ($sql="")
{
global $conn;
if(empty($sql)) { echo "Insert query not found"; }
if(empty($conn)
{
echo "Connection not found";
}
$results = mysql_query($sql,$conn);
if(!$results)
{
echo "Error in Query : ".$sql."<br>".mysql_errno()." : ". mysql_error();
}
$id = mysql_insert_id();
If($id)
return $id;
else
return 1;
}
## Execute Update / Delete / mulitple insert query
function execute($sql="")
{
global $conn;
if(empty($sql)) { echo "Query not found"; }
if(empty($conn))
{
echo "Connection not found";
}
$results = mysql_query($sql,$conn);
if(!$results)
{
echo "Error in Query : ".$sql."<br>".mysql_errno()." : ". mysql_error();
}
$rows = 0;
$rows = mysql_affected_rows();
if($rows==0) return 1;
return $rows;
}
小心你的代码。使用此代码,向其添加SQL注入非常容易。您还有另一个问题:您正在使用完全弃用的 mysql_* 扩展(它们将在 PHP 的下一个主要版本中删除)。
我的建议是:
- 切换到另一个数据库库。我推荐PDO(http://php.net/manual/en/book.pdo.php),但你也可以使用mysqli。
- 了解一些有关 SQL 注入的信息。在Stack Overflow中有很多关于SQL注入和PHP的好而有趣的线程。