2017-05-24 22 views
-1

私は最近PHPを7に更新しましたが、ブログは機能しなくなりました。旧式のコードと関係がありますが、それを更新する方法がわかりません。助言がありますか?新しいPHPバージョンのために古くなった関数

これはお時間を

<?php 

function add_post(){ 
$title  = mysql_real_escape_string($title); 
$contents = mysql_real_escape_string($contents); 

mysql_query("INSERT INTO `posts` SET 
      `title`  = '{$title}', 
      `contents` = '{$contents}', 
      `date_posted`= NOW()"); 
} 
function edit_post($id,$title,$contents) 
{ 
$id = (int)$id; 
$title = mysql_real_escape_string($title); 
$contents = mysql_real_escape_string($contents); 
} 

function delete($table, $id){ 
$table = mysql_real_escape_string($table); 
$id = (int)$id; 
mysql_query("DELETE FROM `{$table}` WHERE `id`= {$id} "); 

} 
function get_posts($id = null, $cat_id = null){ 
$posts = array(); 
$query = "SELECT 
      `posts`.`id` AS `post_id` , 
      `title`,`contents`,`date_posted`.`name` 
      FROM `posts` 
      INNER JOIN `categories` ON `categories`.`id` = `posts`.`cat_id` " ; 
if(isset($id)){ 
    $id = (int)$id; 
    $query .= " WHERE `posts`.`id` = {$id} "; 
     } 
if(isset($cat_id)){ 
    $cat_id = (int)$cat_id; 
    $query .= " WHERE `cat_id` = {$cat_id} "; 
     }   

$query .= "ORDER BY `post_id` DESC"; 




    return $posts; 
} 

おかげで私のコードです。

+0

mysql拡張が7.0.0から削除されました。 mysqli(余分なiに注意してください)またはPDOに切り替える必要があります。 –

+0

'mysql'として' mysqli'や 'PDO'を使うのが廃止されました。詳細はこちら:https://www.w3schools.com/php/php_mysql_connect.asp – Vikrant

+1

@Vikrantはw3schoolsに初心者を送りません。そのサイトは有害です。 –

答えて

-2

mysql_real_escape_stringのとするmysql_queryは、PHP 7あなたは代替としてのMysqliを使用することができます

で除去しました。

http://php.net/manual/en/mysqli.real-escape-string.php

+0

いいえ、交換は "準備文"です –

+0

私は交換と言っていませんでしたが、それは私にはidがすべての使用雄弁を言う使用する場合はさらに – rchatburn

+0

それはさらに悪い –

関連する問題