Jump to content
php.lv forumi

Recommended Posts

Posted

Sveiki!

 

Varbū kāds zin kādu easy tutoriāli, kurā ir kas līdzīgs ajax chat (shoutbox) parādīts? nepieciešams ir lai ievadot tekstu laukā un nospiežot pogu submit, tas caur ajax pievienojas datubāzei? :) vienkārši ajax apgūt vismaz pagaidām nevēlos, bet vajadzētu vismaz lai ar kopēšanu varētu savest kārtībā to lietu :)

Posted (edited)
nepieciešams ir lai ievadot tekstu laukā un nospiežot pogu submit, tas caur ajax pievienojas datubāzei

pēc prasībām spriežot tev neko vairāk nevajag, kā tikai google: ajax tutorial

Edited by andrisp
Posted (edited)

:D laikam izklausīšos pēc nūba.(tāds jau arī šajā jomā esmu) :) pirmajā (w3c) nav nekā saistībā ar pašu post, un pārējie ir puslīz komerciāli, kuros via nu nekā tāda nav vai arī l;ai apskatītu ir jāmaksā :(

Edited by IM24LV
Posted

Man vajag tieši piemērus ar to kā datubāzītei caur ajax pievienot :( nu bet ja tādu nav, tad laikam būs jāpaburas un jāiebrauc no ta paša kas vien ir :(

Posted

apmēram jau sāku nojaust kas tur notiek. meklēju kādu gatavu pareizu formu kas strādā, tad varētu pielāgot savām vajadzībām, bet tā kkā nevaru atrast w3s ir atrodami visādi varianti, bet ne tieshi ievadīšana un pievadīšana datubāzei :(

Posted

if (iMEMBER) {

$shout_name = $userdata['user_id'];

} elseif ($settings['guestposts'] == "1") {

$shout_name = trim(stripinput($_POST[sn]));

$shout_name = preg_replace("(^[0-9]*)", "", $shout_name);

$shout_name = "G_".$shout_name;

if (isNum($shout_name)) $shout_name="";

}

$shout_message = str_replace("\n", " ", $_POST[sm]);

$shout_message = preg_replace("/^(.{255}).*$/", "$1", $shout_message);

$shout_message = str_replace("[", " [", $shout_message);

$shout_message = preg_replace("/([^\s]{21})/", "$1\n", $shout_message);

$shout_message = trim(stripinput(censorwords($shout_message)));

$shout_message = str_replace("\n", "<br>", $shout_message);

$shout_messagee = str_replace("\n", "", $_POST[sm]);

if ($shout_name != "" && $shout_message != "" && $shout_name != "G_") {

dbquery("INSERT INTO ".$db_prefix."shoutbox (shout_name, shout_message, shout_datestamp, shout_ip) VALUES ('".$shout_name."', '".$shout_message."', '".time()."', '".USER_IP."')");

$oneMessage = true;

}

 

 

Bez tiem visiem pārveidojumiem jau protams var iztikt. bez ajax jau nav nekādu problēmu, tas ajax jau sagādā lielākās galvassāpes, bet bez ajax nevar - zūd čata jēga (nepieciešams tāpat kā www.hc.lv, kreisajā malā)

 

Tāks, atradu laikam vēlvienu variantu ka to pašu var ar iframe izdarīt. jāpatestē vai tas būs taspats.

Posted

Nu to jau ez saprotu :D :) Tāpēc meklēju kādu piemēru, kurā ir tieši tas ko man vajag - proti caur formu ar ajax palīdzīby ievadīt datubāzē.

Posted

Nu bet es jau teicu, ka ir bez ajax, tāpēc gribu tikai tai vienai lietai pielikt ajax. Skriptam jau ir uzlikts automātiskā refresh ajax, tagad vēl tikai to vajag :)

Posted (edited)

Jēzus Marija, jau gandrīz visu dienu būšu ar šo mazo mēsliņu, kas nemaz tik vienkāršs nav, nodarbojies :) Esmu ticis tiktāl, bet nevaru saprast kas par vainu varētu bū / kā tālāk darīt ;(

 

tātad sākumā ir parastā lapa, kurā ir teksta laukums un pievienoshanas poga:

 

<textarea name='sm' rows='4' class='textbox' style='width:140px;' id='shoutedit'></textarea>
<span id='shoutchangebutton'><input type='button' onClick=\"AddShoutPost('shout', 'lol', '".INFUSIONS."shoutbox_panel/actions.php?typek=add', '".INFUSIONS."shoutbox_panel/'); ods()\"  value='Pievienot' class='button'></span>

 

zemāk ir pats čatu tekstu lauks, bet tātad iepriekš jau tiek inklūdots javascripts:

 

function AddShoutPost(fo, div, tar, adre) { 
$('shoutchangebutton').innerHTML = "<input type='button' onClick=\"AddShoutPost('"+fo+"', '"+div+"', '"+adre+"actions.php?typek=add', '"+adre+"'); ods()\"  value='Wyslij' class='button'>";
	 var req = mint.Request();
		 req.onInitialization = function() { $(div).innerHTML = "Loading..."; }
		 req.OnLoading = function() { $(div).innerHTML = "<center><img src='infusions/shoutbox_panel/images/load.gif'></center>"; }
		 req.OnSuccess = function() { $(div).innerHTML = this.responseText; }
		 req.OnError = function () { $(div).innerHTML = "Wyst±pi³ b³±d !!!"; }			 
		 req.SendForm(fo,tar);
}

 

cik saprotu, tad vaina ir šajā javaskriptā, jo viņš pieprasa vēl no kaut kāda cita javascripta, kurš ir 1500 rindas biezs, un galīgi nevaru izlobīt ko viņam no ta javascripta vajag.

 

tātad actions.php attiecīgā daļā ir:

 

if($typek == "add"){
if (iMEMBER) {
	$shout_name = $userdata['user_id'];
} elseif ($settings['guestposts'] == "1") {
	$shout_name = trim(stripinput($_POST[sn]));
	$shout_name = preg_replace("(^[0-9]*)", "", $shout_name);
	$shout_name = "G_".$shout_name;
	if (isNum($shout_name)) $shout_name="";
}
	$shout_message = str_replace("\n", " ", $_POST[sm]);
	$shout_message = preg_replace("/^(.{255}).*$/", "$1", $shout_message);
	$shout_message = str_replace("[", " [", $shout_message);
	$shout_message = preg_replace("/([^\s]{21})/", "$1\n", $shout_message);
	$shout_message = trim(stripinput(censorwords($shout_message)));
	$shout_message = str_replace("\n", "<br>", $shout_message);
	$shout_messagee = str_replace("\n", "", $_POST[sm]);
	if ($shout_name != "" && $shout_message != "" && $shout_name != "G_") {
		dbquery("INSERT INTO ".$db_prefix."shoutbox (shout_name, shout_message, shout_datestamp, shout_ip) VALUES ('".$shout_name."', '".$shout_message."', '".time()."', '".USER_IP."')");
			$oneMessage = true;
	}
include INFUSIONS."shoutbox_panel/message.php";

}

 

nu inklūdots tiek prosta visi ieraksti, tur problēmām nevajadzētu būt. :( kā lai saved to javascriptu kārtībā, jo cik noprotu trūkst dažas funkcijas, kurām jānāk no ta mintajaxa. ;(

Edited by IM24LV
×
×
  • Create New...