Mam taki problem mam skrypt, w którym jest zmienna o nazwie wynik i tą zmienną przkazuje do skryptu za pomocą ajaxa
Tu jest cały kod
<meta content="text/html; charset=ISO-8859-2" http-equiv="content-type">
<script language="javascript">
var XMLHttpRequestObject = false;
if (window.XMLHttpRequest) {
XMLHttpRequestObject = new XMLHttpRequest ();
}
else if (window.AtiveXObject) {
XMLHttpRequestObject = new ActiveXObject("Microsoft.XMLHTTP");
}
function getData (dataSource, divID) {
if(XMLHttpRequestObject) {
var znak = document.getElementById('znak').value;
//tutaj dałem celowo a, ”o + nie da się przekazać
if (znak == "+") znak = "a";
var obj = document.getElementById(divID);
var sciezka = obj.innerHTML;
//alert(sciezka);
XMLHttpRequestObject.open("GET", dataSource + "&" + "znak=" + znak);
XMLHttpRequestObject.onreadystatechange = function ()
{
if (XMLHttpRequestObject.readyState == 4 && XMLHttpRequestObject.status == 200) {
//document.write("sfdsf");
/*if (setInterval("load",1000) ) {
obj.innerHTML = XMLHttpRequestObject.responseText;
}*/
//while (setInterval("load",1000) ) {
obj.innerHTML = XMLHttpRequestObject.responseText;
//document.forms["form"].submit();
//}
}
}
XMLHttpRequestObject.send(null);
//document.write("sfdsf");
}
}
</script>
<?php
require("./funkcje.php");
$liczba1 = rand(1,20);
$liczba2 = rand(1,20);
$liczba3 = rand(1,20);
$znak = rand(0,1);
$znak2 = rand(0,1);
$pozycja = rand(0,1);
print ("<form method=get>
");
if ($znak == 0) {
if ($pozycja == 0) {
$wynik = (string) "$liczba1 <input type=text id=znak size=2> $liczba2";
}
else {
$wynik = (string) "$liczba1 a $liczba2";
}
$wynik2 = $liczba1 + $liczba2;
}
else {
if ($pozycja == 0) {
$wynik = (string) "$liczba1 <input type=text id=znak size=2> $liczba2";
}
else {
$wynik = (string) "$liczba1 - $liczba2";
}
$wynik2 = $liczba1 - $liczba2;
}
if ($znak2 == 0) {
if ($pozycja == 1) {
$wynik .= (string) " <input type=text id=znak size=2> $liczba3";
}
else {
$wynik .= (string) " a $liczba3";
}
$wynik2 += $liczba3;
}
else {
if ($pozycja == 1) {
$wynik .= (string) " <input type=text id=znak size=2> $liczba3";
}
else {
$wynik .= (string) " - $liczba3";
}
$wynik2 -= $liczba3;
}
$wynik3 = str_replace("a","+",$wynik);
print $wynik3 . "<br>";
//dla $wynik wszystko działa dobrze w tym miesjcu, ale jak dam $wynik3 to już nie przekazuje
print ("$wynik3 = $wynik2");
print ("<input type = \"button\" value =\"zobacz\"
onclick = \"getData('zadanie22.php?liczba1=$liczba1&liczba2=$liczba2&liczba3=$liczba3&wynik=$wynik2&text=$wynik',
'targetDiv')\">
</form>
<div id=targetDiv>
<p></p>
</div>
");
?>
I teraz sprawa jest taka jak w pewnych fragmentach kodu zamiast $wynik dam zmienną $wynik3 to nie wywołuje ajaxa mam to zapisane w komentarzach, bo cel jest taki, że w zmiennej $wynik są znaki typu + a zmienna $wynik3 jest bez tych znaków
I teraz dam fragment następnego kodu
<meta content="text/html; charset=ISO-8859-2" http-equiv="content-type">
<?
require("./funkcje.php");
$s = str_replace("<input type=text id=znak size=2>",$_GET["znak"],$_GET["text"]);
$a = $_GET["text"];
print $s;
print "dobrze";
?>
Dodam, że jak jest ustawiona $wynik3 to nie drukuje nic z tego kodu.
Generalnie w skrypcie chodzi mi o to, żeby można było jakoś przekazać do skryptu znaki + które znajdują się w zmiennej $wynik.