Austrys Posted December 5, 2007 Report Share Posted December 5, 2007 Tātad cenšos izbīdīt formu, kas ievieto informāciju mysql datubāzē, bez formas lapas reload. writeChat.php <script language="JavaScript" src="writeChat.js" type="text/javascript"></script> <form name="cform" method="POST" onsubmit="saveData(); return false;"> <input name="message" type="text"><input type="submit" name="submit" value="submit"> </form> writeChat.js function ajaxFunction(){ var ajaxRequest; try{ ajaxRequest = new XMLHttpRequest(); } catch (e){ try{ ajaxRequest = new ActiveXObject("Msxml2.XMLHTTP"); } catch (e) { try{ ajaxRequest = new ActiveXObject("Microsoft.XMLHTTP"); } catch (e){ alert("Your browser broke!"); return false; } } } return ajaxRequest; } function saveData() { htmlRequest = ajaxFunction(); if (htmlRequest==null) { alert ("Browser does not support HTTP Request"); return; } if(document.cform.message.value == "" || document.cform.message.value == "NULL") { alert('You need to fill in message!'); return; } htmlRequest.open('POST', 'sendChat.php'); htmlRequest.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded'); htmlRequest.send('message='+document.shoutbox.shouter.value); document.cform.message.value = ''; document.cform.message.focus(); } sendChat.php <?php include("connection.php"); connect(); $message=$_POST['message']; $query=mysql_query("INSERT INTO chat (characterID, message) VALUES ('test', '$message')"); ?> Šis te kautkā negrib strādāt... ja kāds varētu palīdzēt atrast kur ir vaina... būtu ļoti pateicīgs! Paldies! Link to comment Share on other sites More sharing options...
Aleksejs Posted December 5, 2007 Report Share Posted December 5, 2007 (edited) Būtu brīnišķīgi, ja pastāstītu kaut kā izvērstāk par "Šis te kaut kā negrib strādāt"... ;) UPD: Bet no pirmā acu uzmetiena - problēma izskatās šeit: htmlRequest.send('message='+document.shoutbox.shouter.value); Jo tāda elementa Tev nav - ir šitas document.cform.message. Edited December 5, 2007 by Aleksejs Link to comment Share on other sites More sharing options...
Austrys Posted December 5, 2007 Author Report Share Posted December 5, 2007 (edited) Dati netiek ievadīti datubāzē... taču ieejot sendChat.php lapā, tiek ievietota jauna row ieksh datubāzes! Tātad kļūda nav kvērjā bet kautkur writeChat.js. Ok, paldies! Pamēģināšu! Paldies, par ērgļa aci... Edited December 5, 2007 by Austrys Link to comment Share on other sites More sharing options...
marcis Posted December 5, 2007 Report Share Posted December 5, 2007 dažas rindiņas ar acu pārmetienu htmlRequest.open('POST', 'sendChat.php',true); htmlRequest.send('message='+document.cform.message.value); un writechat.php failā saveData() labāk likt pie action. nevis onsubmit plus apskaties vai kverijā nav vaina. lauks "characterID" nav integer? un kveriju varētu mēģināt izpildīt $query="INSERT INTO chat (characterID, message) VALUES ('test', '".$message."')"; mysql_query($query); Link to comment Share on other sites More sharing options...
Austrys Posted December 6, 2007 Author Report Share Posted December 6, 2007 Paldies, par atsaucību, bet problēma ir atrisināta! Vēl tik jautājums, kāpēc... htmlRequest.open('POST', 'sendChat.php',true); ... likt to true beigās? Link to comment Share on other sites More sharing options...
Aleksejs Posted December 6, 2007 Report Share Posted December 6, 2007 Spriežot pēc šī: http://msdn2.microsoft.com/en-us/library/ms757849.aspx Likt. :) Link to comment Share on other sites More sharing options...
andrisp Posted December 6, 2007 Report Share Posted December 6, 2007 Trešais parametrs nozīmē vai pieprasījumu veikt sinhroni (false) vai asinhroni (true). Ja ir norādīts false, tad pie send() metodes izsaukšanas skripts gaidīs atbildi un tālāk neturpinās darbu, kamēr nebūs saņēmis atbildi. Ja true, tad negaida. http://en.wikipedia.org/wiki/Xmlhttprequest Link to comment Share on other sites More sharing options...
Recommended Posts