2012-03-29 2 views
0

Это очень странно, но когда я добавляю mysql_real_escape_string не загружает страницу, это код, который я загружаю так:mysql_real_escape_string не работает на Jquery нагрузки

$('.abandalink').click(function(){ 
    var codigo_membro = $(this).attr('codigomembro'); 
    $('#change').load('membrosbanda.php?codigo='+codigo_membro); 
}); 

И это membrosbanda .php

$id=$_GET['codigo']; 
$conexion=mysql_connect(HOSTNAME,USER,PW) or die("Problemas en la conexion"); 
mysql_select_db("bandasideral4",$conexion) 
    or die("Problemas en la selección de la base de datos"); 
$registros=mysql_query("SELECT * FROM abanda where codigo='$codigo'") or 
    die("Problemas en el select:".mysql_error()); 

если добавить $ ID = $ _ GET [ 'Codigo']; - $ id = mysql_real_escape_string ($ _ GET ['codigo']); прекращает работать

+0

Как он «перестает работать»? – Cfreak

+5

Ваш MySQL слушает порт 3306, и вы только что разместили свой хост (ip), имя пользователя и пароль. Я только что вошел, чтобы проверить его только. Вы должны изменить свой пароль ** как можно скорее ** – Paulpro

+1

jeroen прав в своем ответе, но было бы лучше использовать подготовленные заявления с использованием PDO или MySQLi. – GolezTrol

ответ

4

Прежде всего вам необходимо подключиться к базе данных, до этого mysql_real_escape_string не доступен.

От manual:

Примечание:

соединение MySQL требуется перед использованием mysql_real_escape_string() противном случае возникнет ошибка уровня E_WARNING, и FALSE, это возвращается. Если link_identifier не определен, используется последнее соединение MySQL .

0

Если ставит Codigo в $ ID, ваш SQL должен быть SELECT * FROM Abanda где Codigo = '$ ID'

лучший стиль будет таким: $ id_s = mysql_real_escape_string ($ _ GET [» Codigo ']);

Таким образом, у вас есть все ваши переменные * _s для экранирования sql-файлов, а все обычные переменные являются испорченными данными.

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