2015-11-14 3 views
-1

У меня есть этот код:Преобразование mysql_real_escape в это MySQLi эквивалент

<?php 
@include_once('set.php'); 
@include_once('steamauth/steamauth.php'); 
if(!isset($_SESSION["steamid"])) { 
     Header("Location: index.php"); 
     exit; 
} 
$link = $_POST["link"]; 
$link = mysql_real_escape_string($link); 
$steam = $_SESSION["steamid"]; 
mysql_query("UPDATE users SET `tlink`='$link' WHERE `steamid`='$steam'"); 
Header("Location: settings.php"); 
exit; 
?> 

И мне нужно, чтобы преобразовать его в MySQLi, потому что это совершенно бесполезно в нынешнем состоянии. Изменение «mysql_» на «mysqli_» вообще не работает.

+1

Вам следует научиться использовать подготовленные операторы вместо экранирования. Но вы хотите, чтобы 'mysqli_real_escape_string ($ conn, $ link)'. – Barmar

+0

Давая моей голове серьезный трясти. –

ответ

0

Я думаю, что это то, что вы ищете.

<?php 

require_once('set.php'); 
require_once('steamauth/steamauth.php'); 
if(!isset($_SESSION["steamid"])) { 
    header("Location: index.php"); 
    exit(); 
} 
$steam = $_SESSION["steamid"]; 

// Open a new connection to the MySQL server 
$connection = new mysqli($host, $username, $password, $databaseName); 

// Check connection 
if($connection->connect_errno){ 
    // error 
    die('Connect Error: ' . $connection->connect_error); 
} 

// Escapes special characters in a string for use in an SQL statement 
$link = $connection->real_escape_string($_POST["link"]); 

// Execute query 
$connection->query("UPDATE users SET tlink='{$link}' WHERE steamid='{$steam}'"); 

// Close connection 
$connection->close(); 
header("Location: settings.php"); 
exit(); 

?> 
Смежные вопросы