Jump to content
php.lv forumi

Recommended Posts

Posted

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!

Posted (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 by Aleksejs
Posted (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 by Austrys
Posted

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);

Posted

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?

×
×
  • Create New...