Witamy na forum PC Format Zapraszamy do REJESTRACJI


Użytkownicy przeglądający ten wątek: 1 gości

odświeżanie DIV-a po akcji SELECT

#1
odświeżanie DIV-a po akcji SELECT
Witam
Mam następujący problem i chciałbym Was prosić o pomoc.

W pilku index.php mam trzy DIV-y.
W pierwszym pole wyboru osób. Wybranie osoby odwołuje się do zewnetrznego pliku getuser.php. Ten plik pobiera z bazy danych wszystkie dane osoby i wyświetla te dane. Przy czym te dane są wyświetlane w pliku index.php w divie drugim poprzez wywołanie "txtHint".
i do tej pory wszystko gra znakomicie. Problem tkwi w tym, że w trzecim
divie jest wykres, który bazuje na pliku XML, tworzonym w oparciu o wyniki również pobrane (w pliku getuser.php) z bazy danych dla danej osoby.
I tutaj pytanie. W jaki sposób wykonanać odświeżanie tego trzeciego DIV-a z wykresem, aby wybierając osobę, wraz z wyświetlaniem jej danych nastepowało odświeżanie ostatniego DIV-a?
Jak widzisz w pliku getuser.php następuje pobranie danych do wykresy i
zapisanie ich do pliku XML. Tak więc wykres jest gotowy do wyświetlenia, ale może to nastąpić dopiero po przeładowaniu tego DIV-a.

index.php

<head>
<script type="text/javascript">
function showUser(str)
{
if (str=="")
{
document.getElementById("txtHint").innerHTML="";
return;
}
if (window.XMLHttpRequest)
{// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=new XMLHttpRequest();
}
else
{// code for IE6, IE5
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange=function()
{
if (xmlhttp.readyState==4 && xmlhttp.status==200)
{
document.getElementById("txtHint").innerHTML=xmlhttp.responseText;
}
}
xmlhttp.open("GET","getuser.php?q="+str,true);
xmlhttp.send();
}
</script>

</head>
<body>


<div>
<form>
<select name="users" onchange="showUser(this.value)">
<option value="1" >Adam</option>
<option value="2">Jan</option>
</select>
</form>
</div>

<div id="txtHint"></div>

<div id="wykres">
<table width="%" border="0" cellspacing="0" cellpadding="1" align="center">
<tr>
<td valign="top" class="text" align="center"> <div id="chartdiv"
align="center">
FusionCharts. </div>
<script type="text/javascript">
var chart = new FusionCharts("./Charts/FCF_Column3D.swf", "ChartId", "165",
"200");
chart.setDataURL("./Data/osoba.xml");
chart.render("chartdiv");
</script>
</td>
</tr>
</table>
</div>

plik getuser.php

<?php
$q=$_GET["q"];
include('db_fns.php');
$sql="SELECT * FROM baza WHERE id = '".$q."'";
$result = mysql_query($sql);
while($row = mysql_fetch_array($result))
{
echo "<table style=width:100%; border='0'>";
echo "<tr>";
echo "<td>";
echo "<table style=width:100%; border='0'>";
echo "<tr>";
echo "<th WIDTH=130>Imię</th>";
echo "<td>" . $row['imie'] . "</td>";
echo "</tr>";
echo "<tr>";
echo "<th>Nazwisko</th>";
echo "<td>" . $row['nazwisko'] . "</td>";
echo "</tr>";
echo "<tr>";
echo "<th>Miasto</th>";
echo "<td>" . $row['miasto'] . "</td>";
echo "</tr>";
echo "<tr>";
echo "<th>Kontakt</th>";
echo "<td>" . $row['kontakt'] . "</td>";
echo "</tr>";
$glos1=$row['tak'];
$glos2=$row['nie'];
echo "</table>";
echo "<td WIDTH=112 ALIGN=center VALIGN=top><img src=" . $row['foto'] .
"></td>";
echo "</table>";
}

$string = <<<XML
<graph caption='Sonda poparcia' xAxisName='' yAxisName=''
decimalPrecision='0' formatNumberScale='0'>
<set value='$glos1' color='8BBA00' />
<set value='$glos2' color='9D080D' />
</graph>
XML;

$xml = new SimpleXMLElement($string);
echo $xml->asXML("./Data/osoba.xml");
mysql_close($connection);
?>
 System operacyjny: windows_xp_2003 Przeglądarka: opera
#2
RE: odświeżanie DIV-a po akcji SELECT
Cytat:Nie można po prostu nadpisać tego diva (a dokładnie tego td-ka) wartością:
<script type="text/javascript">
var chart = new FusionCharts("./Charts/FCF_Column3D.swf", "ChartId", "165",
"200");
chart.setDataURL("./Data/osoba.xml");
chart.render("chartdiv");
</script>

?
[Obrazek: musicbar.php?username=hatesz&color=red&u...unicode=no]
 System operacyjny: windows_seven Przeglądarka: chrome
#3
RE: odświeżanie DIV-a po akcji SELECT
chyba nie do końca, rozumiem Twoją propozycję.
W kodzie jest zapisane dokładnie tak jak proponujesz.
 System operacyjny: windows_xp_2003 Przeglądarka: opera
#4
RE: odświeżanie DIV-a po akcji SELECT
Chodzi mi to, żeby po tym ostatnim wyborze, gdy ten graf ma się odświeżyć usunąć ten graf i stworzyć go jeszcze raz (wczytają się wtedy dane z pliku XML od nowa). A zrobić to powinno się dać poprzez usunięcie treści tego div'a i wstawieniu jej tam jeszcze raz.
[Obrazek: musicbar.php?username=hatesz&color=red&u...unicode=no]
 System operacyjny: windows_seven Przeglądarka: chrome
#5
RE: odświeżanie DIV-a po akcji SELECT
czyli jaką zmianę w kodzie proponujesz?
 System operacyjny: windows_xp_2003 Przeglądarka: opera
Programy: Polecane / Nowe / Inne




Podobne wątki (odświeżanie DIV-a po akcji SELECT)
Wątek: Autor Odpowiedzi: Wyświetleń: Ostatni post
  Dynamiczne ustalanie wysokości div. DJ Zgon 2 1275 21.09.2017, 11:33
Ostatni post: pheto
  Jak w stronie internetowej uzyskać div-a nad margin? toslaw1 5 1196 25.02.2017, 15:18
Ostatni post: dzikuu86
  Zdjęcia w <div> ZanziBar 9 8737 17.06.2015, 19:31
Ostatni post: rafineria888

Skocz do:


Wybrane wątki (odświeżanie DIV-a po akcji SELECT)
Wątek: Autor Odpowiedzi: Wyświetleń: Ostatni post
Big Grin [PHP] Rotator linków, który nie wyświetli danego linka. semozo 1 5057 13.04.2019 10:29
Ostatni post: wlisik
  Wywołanie diva funkcją SebastianF 3 5507 25.03.2019 10:55
Ostatni post: hydr4x
Scared front-end czy back-end gbr 7 10505 23.03.2019 16:56
Ostatni post: luciussulla
  Gdzie odpłatnie wypozycjonować swoją stronę w html5 w google za 100zł? aktywny27 13 21312 17.02.2019 21:44
Ostatni post: SEMPIRE
  xampp konwersja video milutki182 3 11186 10.02.2019 13:18
Ostatni post: Ajgor
  HTML a Wordpress Majki_77 3 10241 10.02.2019 13:17
Ostatni post: Ajgor
  Gotowe klasy xCart 0 5379 08.02.2019 17:16
Ostatni post: xCart
  Jak ustawić tekst na środku ekranu buzek1 4 2920 08.02.2019 17:07
Ostatni post: xCart
Ściana Problem a zaktualizacją Joomla 3.6.5 do 3.8.8 CREATIVE_ 14 21170 13.01.2019 06:00
Ostatni post: CREATIVE_
  Xampp i CMS Made Simple Echelon 1 6441 07.12.2018 14:35
Ostatni post: raxer
  Problem z certyfikatem na sslforfree.com gentleman 2 7689 11.10.2018 17:09
Ostatni post: Michu_PL
  Generator kodów kreskowych Yanke$ 0 8029 16.09.2018 12:02
Ostatni post: Yanke$
  skalowanie elementów do wielkości ekranu szakal87 1 8313 11.09.2018 05:36
Ostatni post: Michu_PL
  Formularz do zgłaszania błędów na stronie-pomoc w przeróbce. raxer 0 7611 10.09.2018 18:51
Ostatni post: raxer
  Layout Strony Majki_77 2 9034 28.08.2018 16:27
Ostatni post: gentleman