Jump to content
php.lv forumi

Ievietojot DB tiek pazaudeeti dazhi simboli


Recommended Posts

Posted

Tiek pazaudēti, piemēram + un &. Pats iisti nevaru atkost kas par vainu, draugs grib lai sataisa.

$message=$_POST['message'];

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

 

 

 

un nekas vairāk arī itkā īpaši tur nenotiek, cik papētīju. ā vēl DB ir

 

message	  varchar(600)	  latin1_swedish_ci			No

Posted

tu gadijuma neizmanto kko šadu????

$deletable = array("+", "&");
$string_replace = str_replace($deletable, "", "$message");

ja izmanto tad tas vnk visus + un & aizvieto ar "" jeb neko(piemeram janis&juris bus janisjuris)

Posted

phpjanis, ja viņš izmantotu, tad gan jau zinātu. :) Nejauši tādu kodu grūti uzrakstīt. :)

 

IM24LV, uzreiz pirms kverija izpildes pamēģini izdrukāt to kveriju un paskaties kāds tas izskatās.

Kā arī - tā ir MySQL datubāzē ? Cik zinu, tad varchar max garums ir 255 MySQL datubāzē.

Posted

nu tur nav problema, megjinaju nomainit to arii uz text un citiem jā, mysql datubāzē + vietā irliek atstarpi. vaina varbūt ir javascriptaa, jo tas notiek ar ajax. taa varetu but? itkaa neko aizdomigu arii javascripta nemaniju

Posted (edited)
phpjanis, ja viņš izmantotu, tad gan jau zinātu. :) Nejauši tādu kodu grūti uzrakstīt. :)

Vins tak teica, ka Pats iisti nevaru atkost kas par vainu, draugs grib lai sataisa.(tatad pats nav rakstijis)

Pirmais kas ienaca prata apskatot vina iedoto izravumu no coda bija str_replace

Edited by phpjanis
Posted (edited)

function saveData(){
htmlRequest = ajaxFunction();
if (htmlRequest==null){ // If it cannot create a new Xmlhttp object.
	alert ("Browser does not support HTTP Request");
	return;
} 

if(document.shoutbox.shouter_comment.value == "" || document.shoutbox.shouter_comment.value == "NULL"){
	alert('Ieraksti kko!');
	return;
}
htmlRequest.open('POST', 'post_chatbox.php');
htmlRequest.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
htmlRequest.send('message='+document.shoutbox.shouter_comment.value); 

document.shoutbox.shouter_comment.value = ''; // Updates the shout box’s text area to NULL.
document.shoutbox.shouter_comment.focus(); // Focuses the text area.





}

 

 

tulit izmegjinashu izdrukat

 

hee, pashaa phpmydadmin izpildot to kveriju viss ir ok, taatad vaina nezin kur ir. varbuut taja input laukaa vaina?

 

<form id="shout" name="shoutbox" method="POST" onsubmit="saveData(); return false;">
<input name="shouter_comment" id="shouter_comment" type="text" />
<input type="hidden" name="submit" value="submit" />
</form>

Edited by IM24LV
Posted
vaina varbūt ir javascriptaa, jo tas notiek ar ajax. taa varetu but?

Jaa ...

 

Dodu 99% ka pazuud arii ? ( Jautajuma zime ) un iespejams ka arii =

Jo Ajax pieprasijumam & + ? un vel dazji ir rezervetie simboli ...

Shadiem gadijumiem ir izdomaata taada lieta kaa JSON

VAI base64 ...

 

PHP to atbalsta sakot no vers 5.2.xx vecakam jameklee (jaizmanto) atseviskjas klases...

 

// skaties linkus //

Posted (edited)

Grey_Wolf, JSON nav nekāda sakara ar datu eskeipošanu. :)

 

base64 gan, un tas ir iebūvēts jau no 4. versijas vismaz.

 

Bet vispār ar AJAX postējot datus, šādām problēmām parasti nevajadzētu būt (kaut gan ? un & tiešam ir tādi īpaši simboli, kas varētu sagādāt problēmas).

 

IM24LV, tev šī rindiņa točna vajadzīga ?

htmlRequest.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');

 

 

Vari arī pamēģināt pirms datu nosūtīšanas escape()ot tos (http://www.w3schools.com/jsref/jsref_escape.asp).

Edited by andrisp
Posted (edited)

"?" un "=" ziimes nepazuud, un andri, bez taas rindinjas jebkas ko ierakstu ievietojaas kaa tukshums ar vienu space. tad jau laikam tur arii taa probleema varetu buut?

Edited by IM24LV
Posted
Grey_Wolf, JSON nav nekāda sakara ar datu eskeipošanu. :)

Es laikam ne taa noformuleeju :(

Doma bija ka izmantojot gatavus JS skriptus kas izmanto JSON dati tiek arii aizkodeeti ... tb. automatiski nav vairs jaarupejaas par Aizliegtajiem simboliem...

un PHP pusee tiek arii automatiski 'atkodeeti' ...

Posted

Nē, es atbildēju Grey Wolfam par viņa 99% pārliecībuy ka arītās zīmes pazūd :D Jo nepazūd! pagaidām ko zinu pazūd tikai + un &

×
×
  • Create New...