Jump to content
php.lv forumi

nedaudz palīdziet ar ajax/js/php/mysql kvērijiem


Austrys

Recommended Posts

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

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 by Aleksejs
Link to comment
Share on other sites

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 by Austrys
Link to comment
Share on other sites

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

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

×
×
  • Create New...