Witam
Jak odświeżyć div po kliknięciu w submit w tym divie?
Dodam, że js i ajaxa nie znam prawie w ogóle…;/
– Dodane 28.01.2010 (Cz) 21:48 –
Nic nie wie?
Witam
Jak odświeżyć div po kliknięciu w submit w tym divie?
Dodam, że js i ajaxa nie znam prawie w ogóle…;/
– Dodane 28.01.2010 (Cz) 21:48 –
Nic nie wie?
W takim razie nie masz innego wyboru, tylko się tego nauczyć. Tak na marginesie, AJAX nie jest do tego potrzebny.
Żebyś miał łatwiej, podam Ci słowo klucz - “innerHTML”.
Pokaż co/ile zrobiłeś z czym masz problem a z pewnością ja bądź ktoś inny postara się Ci pomóc a wytłumaczenie
w Twoim wypadku oznacza - nie znam -> nie chce mi się -> zróbcie za mnie (no chyba że się mylę).
Jeżeli treść jest “wczytana z aktualnej strony” to się zgodzę ale jeżeli wczytuje dynamicznie dane z innego pliku/bazy danych itp. to bez ajaxa raczej się nie obędzie.
Mam skrypt, który odświeża diva co 10s ale nie moge go przerobić na przycisk, próbowałem onCilck=“odswiezaj()” ale nie działa;/
plik: odswiezaj.js
var object = false;
if (window.XMLHttpRequest) object = new XMLHttpRequest();
else if (window.ActiveXObject) object = new ActiveXObject("Microsoft.XMLHTTP");
function getData(dataSource, divID)
{
if (object.readyState==4 || object.readyState==0)
{
var obj = document.getElementById(divID);
object.open("GET", dataSource);
object.onreadystatechange = function()
{
if (object.readyState == 4 && object.status == 200)
obj.innerHTML= object.responseText;
}
object.send(null);
}
}
function odswiezaj()
{
getData('zawartosc_diva.php','mojDIVIK');
setTimeout("odswiezaj()", 10000);
}
zawartosc_diva.php (podaje przykład, prawdziwy plik wygląda inaczej, jest tam łączenie sie z bazą itd)
teraz div na stronie:
[/code] A jest taka możliwość aby nie trzeba było wczytywać pliku?? Jeśli tak to jak to zrobić? Zalezyło by mi na tym… bo z sesji chcialbym pobierać nazwę usera, a w includowanym pliku nie działa;/ Chodzi mi o takie coś:
[code]
zastosowałem już komendę w input. Czy jest taka możliwośc?
Z góry dzięki za pomoc, zależy mi tez trochę na czasie.
Sam skrypt (i przycisk odśwież) działa ale mi osobiście nie podoba się trochę składnia funkcji getData
function getData(dataSource, divID)
{
object.onreadystatechange = function()
{
if (object.readyState == 4)
document.getElementById(divID).innerHTML= object.responseText;
}
object.open("GET", dataSource,true);
object.send(null);
}
We wczytywanym pliku również musisz rozpocząć sesję. Zawsze można tez przesłać dowolne dane ajaxem (najwygodniej poprzez get).
Działa bo się odświeża samo. Ale jak usunę: setTimeout(“odswiezaj()”, 10000); I klinie sie w przycisk to się nie odświeża…
A jak to zrobić bez wczytywania się pliku: zawartosc_diva.php tylko żeby ten kody był tam gdzie jest div?
Odświeża się odświeża
Główny plik
KLIK
[/code] Wczytywany plik - test.php
[code] KLIK 2 dfgdfg
A jak to zrobić bez wczytywania pliku? Chodzi mi o to żeby wszystko było w jednym pliku.
Mam jeszcze jeden skrypt. Działa ok z datą, a jak zrobić żeby działo tez tutaj php?
Link do spakowanych plików:
Ale co ?
PHP normalnie będzie działało (z pliku test.php). Np. zawartość pliku test.php
<?php
echo date("Y-m-d G:i:s");
?>
Do odswiezaj() dodaj setTimeout(“odswiezaj()”, 1000); i masz zegarek
W tych plikach co podałeś to więcej tam czytania niż mi się chce Najlepiej oprzyj kod na tym co jest powyżej.
W tych plikach co podałem wystarczy jak zobaczysz na index.php
–
Php działa, ale
$uzytkownik = $_SESSION[‘login’];
już nie, dlatego chciałem żeby wszystko było w jednym pliku.
Dla powyższych skryptów
index.php
<?php
session_start();
$_SESSION['login'] = 'mario@';
?>
KLIK
[/code] test.php
[code] <?php session_start(); echo $_SESSION[‘login’]; ?>
I wszystko szybciej, jaśniej niż przy użyciu tamtej klasy.
Problem rozwiązany.
Dzięki.
Pozdrawiam
Temat może stary ale mam pytanie co do skryptu. W pliku test.php muszę łączyć się z bazą danych na nowo. W jaki sposób zrobić aby div i plik test.php korzystał z już nawiązanego połączenia z bazą na tej stronie na której div jest umieszczany? Proszę o pomoc.
Raczej się tak nie da ale tutaj mogę się mylić. Jeżeli połączenie wymaga jakichś unikalnych parametrów to je prześlij poprzez ajaxa ale same połączenie z bazą danych wykonaj w pliku, do którego się odwołujesz.