Autor Zpráva
Lexis Doleandr
Profil *
Ahoj, hledám všude ajaxové refreshování od div po div, ale nedaří se. Mohl bych někoho poprosit, aby mi dohodil link/nebo pomohl vypracovat script? Děkuji monokrát
pcmanik
Profil
Lexis Doleandr:
Co to znamena od div po div?
_es
Profil
pcmanik:
Co to znamena od div po div?
Možno: toto alebo toto alebo toto.
pcmanik
Profil
_es:
Nerob tu laskavo zo mna blba, ta otazka bola cielena na autora topicu. Tvoj prispevok je tu absolutne zbytocny...
_es
Profil
pcmanik:
Nerob tu laskavo zo mna blba
To nebolo úmyslom, len som sa pokúsil o trochu humoru, možno by sa hodilo ešte toto.
Lexis Doleandr
Profil *
_es:
:D
pcmanik:
od <div> po </div>, našel jsem scripty, ale refreshovali celou stránku.
Medvídek
Profil
Lexis Doleandr:
Takže hledáš jen refresh určitého divu? :)

http://diskuse.jakpsatweb.cz/?action=vthread&forum=8&topic=82834
Lexis Doleandr
Profil *
Medvídek:
Ano, přesně ten script mám a refreshuje CELOU stránku.
Davex
Profil
Lexis Doleandr:
Ano, přesně ten script mám a refreshuje CELOU stránku.
Ukaž.
Lexis Doleandr
Profil *
Bohužel url vám nedám, protože to vytvářím na localhostu.
Dodám zdrojové kody:

stránka, kde se "lista" refreshuje
<?php
session_start();
require_once "config.inc.php";
if($_SESSION["ID"])
	{
		$dotaz = mysql_query("SELECT * FROM staty WHERE id='".$_SESSION["ID"]."'");
		$staty = mysql_fetch_assoc($dotaz);
	}
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
<html>
<head>
	<meta http-equiv="content-type" content="text/html;charset=UTF-8">
	<link href="funkce.inc.css" type="text/css" rel="stylesheet"> 
	<script src="funkce.inc.js"></script>
	<title>Test</title>
</head>
<body>
	<div id="lista" class="lista">
		<table border="1" height="100%" width="100%">
			<tr>
				<td valign="center">Příhlášen: <b><?php if($_SESSION["ID"]){ echo $_SESSION["NICK"]; }else{ echo "Nejsi přihlášen/a | <a href='prihlaseni.php'>příhlásit</a> | <a href='registrace.php'>registrace</a>"; } ?></b></td>
				<td valign="center">
					<?php if($_SESSION["ID"]){ ?>
					<table align="center">
						<tr>
							<td valign="center"><?php if($staty["i_zprava"] == "2"){ echo "<a href=''><img src='img/zprava.png' alt='Nová zpráva!' title='Nová zpráva!'></a>"; } ?></td><td width="10px"> </td><td><?php if($staty["i_souboj"] == "2"){ echo "<a href=''><img src='img/souboj.png' alt='Nový souboj!' title='Nový souboj!'></a>"; } ?></td>
						</tr>
					</table>
				</td>
				<td valign="center">
					<table align="right">
						<tr>
							<td><img src="img/zlato.png" alt="Zlato (<?php echo $staty["zlato"]; ?>)" title="Zlato (<?php echo $staty["zlato"]; ?>)"></td>
							<td><b><?php echo $staty["zlato"]; ?></b></td>
							<td><img src="img/duse.png" alt="Duše (<?php echo $staty["duse"]; ?>)" title="Duše (<?php echo $staty["duse"]; ?>)"></td>
							<td><b><?php echo $staty["duse"]; ?></b></td>
							<td><img src="img/sila.png" alt="Síla (<?php echo $staty["sila"]; ?>)" title="Síla (<?php echo $staty["sila"]; ?>)"></td>
							<td><b><?php echo $staty["sila"]; ?></b></td>
							<td><img src="img/inteligence.png" alt="Inteligence (<?php echo $staty["inteligence"]; ?>)" title="Inteligence (<?php echo $staty["inteligence"]; ?>)"></td>
							<td><b><?php echo $staty["inteligence"]; ?></b></td>
						</tr>
					</table> <?php } ?>
				</td>
			</tr>
		</table>
	</div>
	<table border width="100%" height="100%">
		<tr>
			<td>sd</td>
		</tr>
	</table>
	
</body>
</html>

refreshovací kod:
function refresh(){
var xmlHttp;
	try{	
		xmlHttp=new XMLHttpRequest();
	}
	catch (e){
		try{
			xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
		}
		catch (e){
		    try{
				xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
			}
			catch (e){
				alert("Váš prohlíže nepodporuje ajax!");
				return false;
			}
		}
	}

xmlHttp.onreadystatechange=function(){
	if(xmlHttp.readyState==4){
		document.getElementById('lista').innerHTML=xmlHttp.responseText;
		setTimeout('refresh()',2000);
	}
}
xmlHttp.open("GET","",true);
xmlHttp.send(null);
}

window.onload=function(){
	setTimeout('refresh()',2000);
}
_es
Profil
Lexis Doleandr:
url vám nedám, protože to vytvářím na localhostu.
http://diskuse.jakpsatweb.cz/?action=vthread&forum=18&topic=118397#localhost

xmlHttp.open("GET","",true);
Aká adresa sa má načítať?
Lexis Doleandr
Profil *
_es:
Jaká adresa? Potřebuji jen refresh stránky.
_es
Profil
Lexis Doleandr:
Potřebuji jen refresh stránky.
Naštuduj si, na akom princípe pracuje AJAX.
Lexis Doleandr
Profil *
_es:
Načítáni dat v pozadí stránky?...
Co bych teda měl použít k refreshu div(u)?
_es
Profil
Lexis Doleandr:
Načítáni dat v pozadí stránky?
Na a akých dát? Kde má prehliadač tie dáta zobrať? Potrebuje nejakú URL adresu, z ktorej tie dáta načíta.
Lexis Doleandr
Profil *
_es:
Data jsou již v tom divu, když se něco v databázi změní, změní se to i na stránce, žívá ukázka.
Mě asi tak nevadí, že se refreshuje celá stránka, mě vadí, že když proběhne refresh, tak se všechno "zdvojí (pouze obsah)".
_es
Profil
Lexis Doleandr:
když proběhne refresh, tak se všechno "zdvojí
No však keď do toho <div>u vkladáš cez JS obsah celého dokumentu, tak sa ti tam ten dokument naozaj vloží - robí to čo mu kážeš. Vytvor si PHP skript, čo ti vráti len to, čo chceš, aby tam bolo.
Lexis Doleandr
Profil *
_es:
Takže ten div nechám stejný, zkopíruji ho do soubor.php, a takhle udělám ten js?
xmlHttp.open("GET","soubor.php",true);
_es
Profil
Lexis Doleandr:
a takhle udělám ten js?
Áno.
Lexis Doleandr
Profil *
_es:
Oukey, děkuji, funguje to.

Vaše odpověď

Mohlo by se hodit

Neumíte-li správně určit příčinu chyby, vkládejte odkazy na živé ukázky.
Užíváte-li nějakou cizí knihovnu, ukažte odpovídajícím, kde jste ji vzali.

Užitečné odkazy:

Odkud se sem odkazuje


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0