Stakeoverflow が提案したすべての提案を検索して試しましたが、どれもうまくいきませんでした。2 つの php ファイル (add_new_page.php、sanitise.php) があります。「sanitise.php」関数「エスケープ」でこのエラーが発生します。
PHP - 未定義のメソッド database::real_escape_string() の呼び出し
関数エスケープで何が間違っているのかがわからないようです。どんな助けでも本当に感謝します。私の締め切りは非常に近いので、できるだけ早くこれを機能させる必要があります。以下は、私の2つの作業ファイルのコードです。
データベース接続
$db = new database($db_host, $db_user, $db_pass, $db_name);
add_new_page.php
require_once "../classes/classes.php";
if(isset($_POST["txtpagetitle"])){
$txtpagetitle = $_POST["txtpagetitle"];
$txtbrowsertitle = $_POST["txtbrowsertitle"];
$txtpagecontent = $_POST["txtpagecontent"];
$txtpagetitle = trimmer($txtpagetitle);
$txtbrowsertitle = trimmer($txtbrowsertitle);
$txtbrowsertitle = trimmer($txtbrowsertitle);
$txtpagetitle = escape($txtpagetitle, $db);//Calling escape function
$txtbrowsertitle = escape($txtbrowsertitle, $db);//Calling escape function
$txtbrowsertitle = escape($txtbrowsertitle, $db);//Calling escape function
$txtpagetitle_required = required($txtpagetitle);
$txtbrowsertitle_required = required($txtbrowsertitle);
if($txtpagetitle_required == false){
echo "Page Title is required...";
return false;
}
}
サニタイズ.php
// Escape all characeters - I' am getting the error here...
function escape($field){
global $db;
return $db->real_escape_string($field);
}