2014-01-17 2 views
-3

У меня есть новая проблема, чтобы вставить значение в другой таблице ... РНР дать мне эти ошибки:добавить значение в другую таблицу, онлайн не работает? MYSQL PHP

Warning: mysqli_real_escape_string() expects parameter 1 to be mysqli, null given in /home on line 8 

Warning: mysqli_real_escape_string() expects parameter 1 to be mysqli, null given in /home on line 9 

Warning: mysqli_real_escape_string() expects parameter 1 to be mysqli, null given in /home on line 10 

и это скрипт:

<?php 
require 'datidatabase.php'; 

$uid= mysqli_real_escape_string($con,$_GET['uid']); ///LINE8 
$username= mysqli_real_escape_string($con,$_GET['username']); ///LINE9 
$email= mysqli_real_escape_string($con,$_GET['email']); ///LINE10 

$con = mysqli_connect($host, $dbu, $dbp); 
if (!$con){ 
     die('Could not connect: ' . mysqli_error()); 
     } 

$db_selected= mysqli_select_db($con,'namedatabase'); 
if (!$db_selected){ 
    die ('Can\'t use foo:' . mysqli_error()); 
} 
//end opening connection 

if(empty($uid) || empty($username)){ 
     echo "errore"; 
}else{ 
//artist info 
     $sql="INSERT INTO TABLE1(UIDfacebook, username, email) 
     VALUES 
     ('$uid','$username','$email')"; 
     mysqli_query($con,$sql);  

     $sql1="INSERT INTO TABLE2(UIDfacebook, username) 
     VALUES 
     ('$uid','$username')"; 
     mysqli_query($con,$sql1); 

     $sql2="INSERT INTO TABLE3(UIDfacebook) 
     VALUES 
     ('$uid')"; 
     mysqli_query($con,$sql2); 

     $sql3="INSERT INTO TABLE4(UIDfacebook) 
     VALUES 
     ('$uid')"; 
     mysqli_query($con,$sql3); 

     $sql4="INSERT INTO TABLE5(UIDfacebook) 
     VALUES 
     ('$uid')"; 
     mysqli_query($con,$sql4); 

     echo "R."; 

} 
//close connection 
mysqli_close($con); 
?> 

Я не» я знаю, почему у меня есть эта проблема, я пытался отредактировать сценарий много времени ... кто-нибудь теперь, как я могу решить эту проблему?

в локальном тот же сценарий работал, я не знаю, что случилось сейчас ... Я стараюсь много комбинации и поиска в Интернете, но я не нашел ничего ...

+0

** Вы, очевидно, ** смешиваете 'mysqli_ *' с 'mysql_ *' функциями, если вы получаете такую ​​ошибку. –

+0

Плюс, когда вы «будете» использовать исключительно функции 'mysqli_ *', вам будет нужно делать '$ email = mysqli_escape_string ($ con, $ _GET ['email']); вместо' $ email = mysql_escape_string ($ _GET ['email']); '--- Время для продолжения чтения руководств. –

+0

** Подсказка: ** 'mysqli_! == mysql_' ---' if (mysqli _ ($ _ IS_PRESENT_with_MYSQL _)) {он умрет();} ' –

ответ

0

Ошибки довольно ясно, что происходит. Вы передаете $ con функции до того, как она была определена. Сначала подключитесь, а затем вы сможете использовать $ con в mysqli_real_escape_string.

$con = mysqli_connect($host, $dbu, $dbp); 

$uid= mysqli_real_escape_string($con,$_GET['uid']); ///LINE8 
$username= mysqli_real_escape_string($con,$_GET['username']); ///LINE9 
$email= mysqli_real_escape_string($con,$_GET['email']); ///LINE10 
+0

спасибо, сейчас работает, но когда я вставляю значение, он работает только для TABLE1, если посмотреть в базу данных, у меня нет никаких данных в ТАБЛИЦЕ 2, ТАБЛИЦА 3, ТАБЛИЦА 4 .... и т. д. Знаете ли вы, в чем проблема? php не получает ошибку .... спасибо EDIT: Я изменяю тип значения в базе данных и работает (для знания :)) большое спасибо! – Ribis

+0

Время для проверки некоторых ошибок. http://us1.php.net/mysqli_error – Robbert

+0

спасибо, я решаю БОЛЬШУЮ ошибку, я изменил разное время в таблице, и я забыл способность автоматического приращения для id ... -.- «это то, что происходит, когда Я остаюсь на 11 часов на компьютере ... спасибо всем, эта ошибка сделала мне, как сделать более безопасным _GET! еще раз спасибо – Ribis

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