Помогите разобраться.
В таком виде все работает и переменная $return передается в jawa script.
Но если заменить $razdel = 5; на $razdel = test(5), то в jawa script ничего не
передается.
<?php
function test($otziv_id)
{
require 'database_connection.php';
mysql_query("set names 'cp1251'");
$select_query_otz = "SELECT * FROM otzivy WHERE otziv_id = " . $otziv_id;
$result = mysql_query($select_query_otz);
$row = mysql_fetch_array($result);
$razdel = $row['razdel'];
return $razdel;
}
$kol_otziva_stert = 5;
$kol_otziva_page =(int) $_POST['kolichestvo_otzyvov'];
$kol_otziva_ostatok = $kol_otziva_page - $kol_otziva_stert;
$razdel = 5;
while($kol_otziva_stert++<$kol_otziva_page)
{
$return .= '<div id="block_otzyv"><div id="otzyv">'.$kol_otziva_stert.$razdel.'</div>
<div id="polosa_otzyva"></div></div>';
}
echo json_encode( $return );
Ну тут полный набор:
1. Существует ли database_connection.php
2. Находится ли он в той же папке, что и данный скрипт
3. Происходит ли вообще подключение к базе
4. Почему cp1251?
5. mysql_fetch_assoc() , здесь лучше "SELECT razdel FROM..." и mysql_result(0);
6. и т.д.
_____________
Gear FrameworkGear Framework на Github
1. Существует ли database_connection.php - ДА
2. Находится ли он в той же папке, что и данный скрипт - ДА
3. Происходит ли вообще подключение к базе ДА
4. Почему cp1251? - А что должно быть? Раньше писал UTF8, были косяки с иероглифами и из-за этого проблемы с работой БД,
5. mysql_fetch_assoc() , здесь лучше "SELECT razdel FROM..." и mysql_result(0); - так было изначально. Ничего не выходит.
Есть еще особенность
Если начинает работать любая конструкция подключения другого файла или БД,
то переменная $return вообще не передается в jawa script.
в mysql_result() нужно передать результат выполнения mysql_query()
_____________
Gear FrameworkGear Framework на Github
linker, можешь кодом написать, что сделать нужно?
А то я еще совсем плохо разбираюсь.
Хотя бы так для начала
$result = mysql_query("SELECT * FROM otzivy WHERE otziv_id = " . $otziv_id);
if ($row = mysql_fetch_assoc($result))
return $row['razdel'];
else
return null;
но у тебя скорее всего не происходит подключение к базе данных, но т.к. сообщения об ошибках отключены, то ты их не видишь и думаешь, что всё нормально, однако именно из-за ошибки подключения скрипт прекращает свою работу и естественно в javascript ничего не приходит.
_____________
Gear FrameworkGear Framework на Github
То же самое((
К БД он подключается точно.
Если в функцию передаем значение otziv_id которого нет в таблице - скрипт работает. А если оно есть, то работает только если значение razdel = 0; может с другими цифрами тоже будет. А вот если значение razdel текст - то в jawa script
ничего вообще не передается. Может проблема в типах данных?
Все проблема решена!!!! Спасибо огромное!!!
В файле который заполняет таблице было utf8, там поменял на cp1251, перезаполнил таблицу и все заработало!
Может всё на utf-8 перевести?
_____________
Gear FrameworkGear Framework на Github
У меня тогда почему то часто иероглифы вылезают. А в IE вообще всегда.
А почему UTF-8 советуешь?
Чтобы не было иероглифов надо правильные заголовки отправлять. Utf-8 как минимум универсален.
_____________
Gear FrameworkGear Framework на Github
Немного подучусь программированию и займусь оптимизацией. Пока тяжело дается. Спасибо за помощь, linker!
Быстрый ответ:
Powered by dgreen
Здесь расположена полная версия этой страницы.