[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Не передаются переменные в скрипт
tretstoun70
Здравствуйте,

тут вопрос немного по html5, немного по php - не знаю даже в какую тему лучше его написать - написал сюда.

Собственно, создаётся объект XMLHttpRequest и дальше в скрипт photo.php передаются разные переменные от 1 до 5 - при нажатии на гиперссылки значение в переменной изменяется (я проверял функцией alert, что оно точно изменяется),
а в скрипте всё время одно и тоже значение. В чём может быть причина такого поведения скрипта?

И второй вопрос здесь же: почему-то картинка при добавлении на страницу не отображается, хотя если взять этот код (<img src = "photo/1.jpg">) и записать его изначально на страницу, то картинка отобразится нормально.

Вот код:

...
<div id = "slide">
Нажмите на кнопку, чтобы показать картинку.
</
div>
<
a href="#" onclick="return previousSlide()">Пред</a>
<
a href="#" onclick="return nextSlide()">След</a>
</
article>
<
script type="text/javascript">
/*var req = new XMLHttpRequest();*/

function getXmlHttp(){
var xmlhttp;
try {
xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
try {
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
} catch (E) {
xmlhttp = false;
}
}

if (!xmlhttp && typeof XMLHttpRequest!="undefined") {
xmlhttp = new XMLHttpRequest();
}
return xmlhttp;
}
var req = getXmlHttp();
var slideNumber = 0;
/* Функции для изменения переменной, которая нужна для перехода по слайдам. */
function nextSlide() {
if (slideNumber == 5) {
slideNumber = 1;
}
else {
slideNumber += 1;
}
goToNewSlide();
history.pushState(slideNumber, null, "http://localhost/XMLhttpRequest2/puteshestviya" + slideNumber + ".html");
return false;
}

function previousSlide(){
if ((slideNumber == 1) || (slideNumber == 0)){
slideNumber = 5;
}
else {
slideNumber -= 1;
}
goToNewSlide();
history.pushState(slideNumber, null, "http://localhost/XMLhttpRequest2/puteshestviya" + slideNumber + ".html");
return false;
}

function goToNewSlide(){
req.open ("GET", "photo.php?slide=" + slideNumber, true);
req.onreadystatechange = newSlideReceived;
req.send();
}

/* Функция добавляет слайд на страницу. */
function newSlideReceived() {
if (( req.readyState == 4) && (req.status == 200)) {
document.getElementById("slide").innerHTML = req.responseText;
}
}


вот скрипт photo.php:

<?php

header('Content-Type: text-plain; charset = utf-8 ');

$slide = $_GET['slide'];

switch ($slide) {

case 1:

echo '<figure>
<h2> Фото 1 </h2>
<img src = "photo/1.jpg">
</figure>'
;



break;

case 2:

echo '<figure>
<h2> 2 </h2>
<img src = "photo/2.jpg">
</figure>'
;

break;

case 3:

echo '<figure>
<h2> 3 </h2>
<img src = "photo/3.jpg">
</figure>'
;

break;

case 4:

echo '<figure>
<h2> 4 </h2>
<img src = "photo/4.jpg">
</figure>'
;

break;

case 5:

echo '<figure>
<h2> 5 </h2>
<img src = "photo/5.jpg">
</figure>'
;

break;

default: echo 'Слайд не найден';

}


?>
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.