Avatar billede michaeltryl Seniormester
09. juli 2010 - 16:43 Der er 11 kommentarer og
1 løsning

problem med at overføre til php

hej
Jeg er ved at lave et ajax script som søger i en database
javascript
----
function createRequestObject(){
var request_o;
var browser = navigator.appName;
if(browser == "Microsoft Internet Explorer"){
request_o = new ActiveXObject("Microsoft.XMLHTTP");
}else{
request_o = new XMLHttpRequest();
}
return request_o;
}

var http = createRequestObject();

function liveSearch()
{
var url = "livesearch.php";
var s = document.getElementById('qsearch').value;
var g = document.getElementById('gram').value;
var params = "&s="+s;
var params = "&g="+g;
http.open("POST", url, true);



http.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
http.setRequestHeader("Content-length", params.length);
http.setRequestHeader("Connection", "close");

http.onreadystatechange = function() {
if(http.readyState == 4 && http.status != 200) {
document.getElementById('searchResults').innerHTML='<li>Loading...</li>';
}
if(http.readyState == 4 && http.status == 200) {
document.getElementById('searchResults').innerHTML = http.responseText;
}
}
http.send(params);
}

function sendToSearch(str){
document.getElementById('qsearch').value = str;
document.getElementById('searchResults').innerHTML = "";
}

-----

php koden
---
$s = $_REQUEST["s"];
$g = $_REQUEST["g"];

$s = str_replace(" ", "%", $s);
$g = str_replace(" ", "%", $g);

$output = "$s - $g";

echo $output;
-----

formular felterne
---
echo "<input size=\"40\" value='' id=\"qsearch\" type=\"text\" name=\"vare\" onkeyup=\"liveSearch()\" /><br>";
echo "<input size=\"40\" value='' id=\"gram\" type=\"text\" name=\"gram\" onkeyup=\"liveSearch()\" />";
---

Den henter fint det som skrives i det første felt "vare", men ikke det som skrives i "gram"
Nogen bud på hvor fejlen er henne. synes jeg har prøvet alt.
Avatar billede aners Nybegynder
09. juli 2010 - 17:23 #1
Jeg synes du skal kigge på jQuery - slip for at kode alt det kedelige.

Jeg har selv brugt det til netop disse ting og krydret med jeditable

jQuery: http://www.jquery.com
Jeditable: http://www.appelsiini.net/projects/jeditable/

Der er et fornuftigt forum omkring jQuery og en fin bunke eksempler.
Avatar billede wanze Nybegynder
09. juli 2010 - 17:34 #2
var params = "&s="+s;
var params = "&g="+g;

Det undrer mig, når du siger, at den fint henter det dr står i "vare", men ikke i "gram". Det du skriver der får det til at se ud som om, det er den anden vej rundt, da du der overskriver s med g.
Avatar billede majbom Novice
09. juli 2010 - 19:05 #3
ret:

var params = "&s="+s;
var params = "&g="+g;


til:

var params = "&s="+s;
var params += "&g="+g;
Avatar billede michaeltryl Seniormester
09. juli 2010 - 19:35 #4
hej igen
@aners
Jeg har kigget på jQuery, men vil helst hvis mit nuværende kan komme til at virke

@wanze og splazz
Den udskiver det felt som har id = qsearch andre
har prøvet

var params = "&s="+s;
var params += "&g="+g;
uden held
den registrere dog at jeg skriver noget i gram, da $output udskriver "-" når jeg skriver noget deri
Avatar billede majbom Novice
09. juli 2010 - 20:08 #5
det skulle selkvfølgelig være:

var params = "&s="+s;
params += "&g="+g;
Avatar billede michaeltryl Seniormester
09. juli 2010 - 20:30 #6
det giver heller ikke noget resultat desværre
Avatar billede majbom Novice
09. juli 2010 - 20:48 #7
hvad med:

var params = "?s="+s;
params += "&g="+g;


?
Avatar billede michaeltryl Seniormester
09. juli 2010 - 20:54 #8
Den har jeg prøvet så udskriver den kun "-" uanset hvor jeg skriver
Avatar billede michaeltryl Seniormester
09. juli 2010 - 20:56 #9
nej min fejl den har samme resultat som før. kan det være et andet sted fejlen er?
Avatar billede michaeltryl Seniormester
09. juli 2010 - 21:00 #10
prøvede lige alle løsninger igen hvor jeg slettede filerne fra serveren hver gang.

løsningen
var params = "&s="+s;
params += "&g="+g;

virker nu perfekt. ved ikke lige hvorfor den ikke lavede ændringerne på filerne på serveren før.
Bare læg et svar splazz så får du point
Mange tak for hjælpen
Avatar billede majbom Novice
09. juli 2010 - 21:31 #11
der er tit problemer med cachen når man benytter AJAX...
Avatar billede majbom Novice
10. juli 2010 - 06:58 #12
tfp
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester