Перейти к содержанию

Вопросы и ответы


Рекомендуемые сообщения

  • 1 месяц спустя...
  • 2 недели спустя...

Помогите, пожалуйста, найти ошибку

Вот код:

<?php

header("Content-type: text/xml");

echo('<?xml version="1.0" encoding="UTF-8" standalone="yes"?>');

echo('');

$name = $_GET['name'];

$userNames = array('CHRISTIAN', 'BOGDAN', 'FILIP', 'MIHAI', 'YODA');

if (in_array(strtoupper($name), $userNames))

echo('Здравствуйте, мастер '.htmlentities($name).'!');

else if (trim($name) == '')

echo("Скажи мне, как зовут тебя, незнакомец!");

else

echo(htmlentities($name).',вы мне не знакомы!');

echo('');

?>

В итоге в XML документе появляется только это:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>

И выдается ошибка:

This page contains the following errors:

error on line 1 at column 63: Encoding error

Below is a rendering of the page up to the first error.

Не могу понять, где ошибка в таком простом коде?

Ссылка на комментарий

haha

Спасибо, помогло)

Но чето не воспринимает)

name=YESA

Пишет:

"п»ї

Warning: Cannot modify header information - headers already sent by (output started at Z:\home\localhost\www\ajax\qs.php:1) in Z:\home\localhost\www\ajax\qs.php on line 2

YESA, вы мне не знакомы!"

Добавлено спустя 28 секунд:

Ааааа, все заработало, поменял кодировку в windows 1251)

Добавлено спустя 1 минуту 56 секунд:

Емае, но теперь при вводе кириллических значений, ошибка синтаксиса)

Ссылка на комментарий

да, в функции хеадер тоже нужно прописать кодировку ютф-8. везде должна быть ютф-8. Кодировка файла ютф-8 "без меток"(!).

стыдно не знать, ajax-еру-то.

Ссылка на комментарий
  • 4 недели спустя...

Помогите, пожалуйста, найти ошибку

Вот код:

$select = mysql_query("SELECT*FROM messages;");

while($inf = mysql_fetch_object($select))

{

echo("" . $inf->name . "");

echo("" . $inf->message . "");

echo("" . $inf->time . "");

}

Скрипт берет из базы данных данные, оформляет в XML и отправляет на обработку JS скрипту

Вот JS код, ответственный за обработку данных:

if (xmlHttp.status == 200)

{

xmlResponse = xmlHttp.responseXML;

xmlDocumentElement = xmlResponse.documentElement;

nameArray = xmlDocumentElement.getElementsByTagName("name");

messageArray = xmlDocumentElement.getElementsByTagName("message");

timeArray = xmlDocumentElement.getElementsByTagName("time");

var html;

for (var i=0; 0

html += "" + nameArray.item(i).firstChild.data + "

" + messageArray.item(i).firstChild.data + "

" + "

" + timeArray.item(i).firstChild.data + "

"; }

document.getElementById("element").innerHTML = html;

}

Извлекаем из XML данные тегов и выводим HTML в div элемент с идентификатором element

Однако элемент остается пустым и FireBug сообщает об ошибке:

nameArray.item(i).firstChild is null

Кодировки везде UTF-8 без BOM

PHP скрипт работает

А в JS не могу найти ошибку

Ссылка на комментарий

Даааа, я понял кажется, на каком-то инкременте, когда элемент массива не существует, он выводит ошибку, спасибо вам, попробую позже изменить) А для сайта с большими нагрузками что лучше, джсон или иксмл?

Ссылка на комментарий
А для сайта с большими нагрузками что лучше, джсон или иксмл?

Смотря как ты генерируешь данные. И JSON будет легче выдавать

На странице в форме вводятся данные

Когда совершается событие onclick, запускается JS функция отправки данных на PHP, где они добавляются в базу данных

Затем из базы данных выводятся все данные и отправляются на JS и затем на страницу

Я поправил условие с

for (var i=0; 0

на

for (var i=0; i

Но почему-то FireBug выдает ту же ошибку и на страницу ничего не выводится

Можно выложить исходники? (они небольшие)

Ссылка на комментарий

man22

ну проверь что выдает твой php скрипт просто запустив его в браузере\curl. Проверь что получает твой js: выведи значение nameArray перед циклом.

json как уже сказали будет и быстрее и легче использовать скорее всего.

Ссылка на комментарий

Спасибо всем за помощь)

Ошибку нашел)

Дело в том, что в базе данных была пустая запись, которая превращалась в пустой элемент массива и вызывала ошибку)

Пустые записи появлялись, когда я заходил непосредственно на скрипт без GET данных, и пустые GET данные вносились в базу, исправил положение проверкой на существование переменной)

А почему JSON лучше XML?

Ссылка на комментарий

*23 Допустим смотрю фильм и комп на пару сек зависает с каким то жутким звуком и продолжает или же просто что нибудь делаешь бам встанет и отпустит, как от этого избавиться, даже фильм норм не посмотришь просто жутко накаляет *49

Ссылка на комментарий
*23 Допустим смотрю фильм и комп на пару сек зависает с каким то жутким звуком и продолжает или же просто что нибудь делаешь бам встанет и отпустит, как от этого избавиться, даже фильм норм не посмотришь просто жутко накаляет *49

# include

# include

int main()

{

int komp;

int udarmolotkom=0;

int vremya;//время зависания

printf("enter vremya zavicaniya");

scanf("%d",vremya);

while(komp zavicaet)

{

udarmolotkom++;

vremya--;

}

if(komp==1 && vremya==0)

return true;

}

Ссылка на комментарий
  • 3 месяца спустя...

Пожалуйста, войдите, чтобы комментировать

Вы сможете оставить комментарий после входа в



Войти
  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу
×
×
  • Создать...