通過perpare()方法和檢查欄位防sql注入.
$pdo=new pdo('mysql:host=localhost;dbname=scms', 'root' );
$_post=array('title'=>23,'content'=>'kmm');
$keys= array_keys($_post);
/**
* $filetarr陣列用於規定只可以寫入的字段
*/
$filetarr=array('title','content');
$filtre=true;
foreach ($keys as $value)else
}
if($filtre)) values()";
$pdostatement= $pdo->prepare($sql);
$pdostatement->execute($_post);
var_dump($pdostatement->errorinfo());
}else
2.萬能條件語句,同樣通過字段限制防注入
$pdo=new pdo('mysql:host=localhost;dbname=scms', 'root' );
$_post=array('title'=>23,'content'=>'km');
$keys= array_keys($_post);
/**
* $filetarr陣列用於規定只可以寫入的字段
*/
$filetarr=array('title','content');
$filtre=true;
$where='';
/**
*$wherearr陣列用來根據字段指定查詢條件,例如大於,等於,like
*/
$wherearr=array('title'=>'like','content'=>'>%');
foreach ($keys as $value)
$where.='and '.$value.' between '.":left".' and '.":right ";
$_post[$value]=explode(',', $_post[$value]);
$_post[$value.'left']=$_post[$value][0];
$_post[$value.'right']=$_post[$value][1];
unset($_post[$value]);
}else ";
}
}else
}
/**
*
*如果用or連線條件語句,擷取前面兩個字元
*/
$where=substr($where,3);
if($filtre)";
var_dump($sql);
$pdostatement= $pdo->prepare($sql);
$pdostatement->execute($_post);
$re= $pdostatement->fetchall();
var_dump($pdostatement->errorinfo());
var_dump($_post);
var_dump($re);
}else
萬能SQL語句
在前天的課上,聽了這麼乙個詞 萬能查詢.剛開始還不知道怎麼一回事,知道老師把幾個毫無頭緒,以為要寫很多個方法的程式實現的時候,我真是傻眼了.唉,總結一下,以後這一點真的很重要呢.包括全域性統籌包括 的清晰健壯,是我見過的最好的解決方法了.這樣,我對於 sql 語句的理解更進了一步.更覺得 sql 語...
Linux中Makefile萬能寫法
列出當前目錄下所有 c檔案 src wildcard c 將所有 c檔案轉為 o檔案 obj patsubst c,o,src 指定編譯器 cc gcc 指定鏈結器 cclink g 指定編譯屬性 cflags g wall 指定編譯輸出的可執行程式名稱 outname helloworld all...
嵌入式Linux中Makefile萬能寫法
對於linux系統中使用gcc進行編譯 列出當前目錄下所有 c檔案 src wildcard c 將所有 c檔案轉為 o檔案 obj patsubst c,o,src 指定編譯器 cc gcc 指定鏈結器 cclink g 指定編譯屬性 cflags g wall 指定編譯輸出的可執行程式名稱 ou...