ugrás a tartalomhoz

JavaScript változó átadása AJAX oldalon (kezdő)

hunge · 2006. Júl. 4. (K), 15.28
Sziasztok az ajax megismerésére adtam a fejemet. Találtam is pár egész jó (kezdőknek szóló) linket mintákkal és példaprogramokkal. -Ha kell vlaakinek szívesen beírom.-
Ezek alapján írtam egy saját kódot ami majdnem teljesen jól működik de egyvalamit mégse sikerült megoldani, és ehhez kérnék egy kis segítséget.
<?php 
$ember=$_GET['ember'];
.
//a Php kód MySQl-ből kérdezi le a kívánt rekordokat és irja ki egy select elembe(legördülő menű).
.
print "$eredmeny";//a találatokat tartalmazó select elem +option.-Html kód.- 
?>
 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
	<head>
<title>Ajax Teszt </title>
		<script type="text/javascript" language="javascript">
		function valami(ertek){	
  		
  		
		var xmlhttp=false;
    if(!xmlhttp) { xmlhttp=new XMLHttpRequest(); }
    xmlhttp.open('GET','<?php echo "$_SERVER[PHP_SELF]?lattam=igen"; ?>&ember=ertek', true);
    xmlhttp.onreadystatechange = function() {
        if(xmlhttp.readyState==4) { document.getElementById('kimenet_div').innerHTML = xmlhttp.responseText; }
    }
    xmlhttp.send(null);  		
  		alert (ertek);
		}
		
		</script>
</head>
	<body>
	<br><br>
	<a href="#" name="Egy Teszt" onclick="valami(1)">Ez itt A link...</a>
	<div id='kimenet_div'></div>
	</form>	
	</body>
</html>		 
A gondom az hogy ha az ember=ertek helyett direktbe beírok egy valós rekordszámot számot (amit a php/mysql feltud dolgozni) akkor minden rendben. Hibátlanul működik. De ha a linkbe található paramétert -jelenesetben 1- tartalmazó változot -itt most az "ertek" - írom oda akkor nem működik a lekérdezés. Vajon mért nem működik így? Ha van valami ötletetek kérlek osszátok meg velem.Thx

u.i:Egy egyszerű POST metódust használó php-nek paramétert átadó megvalósítás is jó lenne. Ugyanis csak azért használtam GET-et mivel nem tudtam POST-tal átadni az értéket.
 
1

Nem így gondoltad?

rpspace · 2006. Júl. 4. (K), 15.54
Nem rossz helyen zártad le a stringet?

xmlhttp.open('GET','<?php echo "$_SERVER[PHP_SELF]?lattam=igen"; ?>&ember=ertek', true);

Helyett valami ilyesmi:

xmlhttp.open('GET','<?php echo "$_SERVER[PHP_SELF]?lattam=igen"; ?>&ember='+ertek, true);
2

Ez az!

hunge · 2006. Júl. 5. (Sze), 10.31
Igen ez a megoldás!
___***Nagyon Köszönöm***___

Már csak egy dolgot nem értek, hogy miért nem volt jó az én scriptem és miért jó így, de túlélem ha nemfejtem meg.
3

js != php

Balogh Tibor · 2006. Júl. 5. (Sze), 12.41
Már csak egy dolgot nem értek, hogy miért nem volt jó az én scriptem és miért jó így, de túlélem ha nemfejtem meg.

Azért mert még kevered a PHP és a Javascript módszereket. Amire az egyik nyelv képes, még nem biztos, hogy a másik is.

xmlhttp.open("GET", "<?php echo $_SERVER['PHP_SELF']; ?>?lattam=igen&amp;ember=" + ertek, true);
^...                 ^...                               ^...
 html kódban js      az oldalt létrehozó php            újra a html kódban lévő js