Mysql Ерор при символи

galabin123

Registered
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 's Wrong with Virginia” (2010) с Дженифър �' at line 1

това е кога има някакви други символи в полето и не иска да изпълни заявката а когато е само просто jhkjkjlkjlkj примерно всичко си работи ...
как да го орпавя това?
 
Пробвай да сложиш след кънекцията с DB:
Код:
mysql_query("SET CHARACTER SET utf8");

или (в зависимост от кодировката на файла ти и чарсета)

Код:
mysql_query("SET CHARACTER SET cp1251");
 
с утф 8 съм сложих това mysql_query("SET CHARACTER SET utf8"); но не ми действа същата грешка ..
 
PHP:
<?php 
include "config.php";
if ($_POST['upload']) {
$putq = 'upload/'.basename($_FILES['ufile']['name']);
if (@copy($_FILES['ufile']['tmp_name'], $putq)) {
list($width, $height, $type) = getimagesize("$putq");
if ($width > 1500) {
echo "Снимката е прекалено голяма. Снимката не е качена.";
unlink($putq);
}
else {
function upload_small($tmp_name,$file_type,$path_small){
if($file_type=="image/pjpeg" or $file_type=="image/jpeg" or $file_type=="image/gif" or $file_type=="image/x-png" or $file_type=="image/png"){//проверка дали файлът е картинка
list($width,$height) = getimagesize($tmp_name);
define("WIDTH","150");
define("HEIGHT","112");
if($width<WIDTH and $height<HEIGHT){
move_uploaded_file($tmp_name,$path_small);
}elseif($width>=WIDTH){
$new_width= WIDTH;
$new_height= (int) ($height*$new_width)/$width;
if($file_type=="image/pjpeg" or $file_type=="image/jpeg"){
$imagecreatefrom="imagecreatefromjpeg";
}elseif($file_type=="image/gif"){
$imagecreatefrom="imagecreatefromgif";
}elseif($file_type=="image/x-png" or $file_type=="image/png"){
$imagecreatefrom="imagecreatefrompng";
}
$image_p=imagecreatetruecolor($new_width, $new_height);
$image=$imagecreatefrom($tmp_name);
imagecopyresampled($image_p, $image, 0, 0, 0, 0, $new_width, $new_height, $width, $height);
imagejpeg($image_p, $path_small, 100);
}elseif($height>=HEIGHT){
$new_height= HEIGHT;
$new_width= (int) ($width*$new_height)/$height;
if($file_type=="image/pjpeg" or $file_type=="image/jpeg"){
$imagecreatefrom="imagecreatefromjpeg";
}elseif($file_type=="image/gif"){
$imagecreatefrom="imagecreatefromgif";
}elseif($file_type=="image/x-png" or $file_type=="image/png"){
$imagecreatefrom="imagecreatefrompng";
}

$image_p=imagecreatetruecolor($new_width, $new_height);
$image=$imagecreatefrom($tmp_name);
imagecopyresampled($image_p, $image, 0, 0, 0, 0, $new_width, $new_height, $width, $height);
imagejpeg($image_p, $path_small, 100);
}
}else{ echo 'Файлът не е картинка!'; return; }
}
define("URL","http://localhost/video/");
$username = $_SESSION['username'];
$name = htmlspecialchars($_POST['name']);
$age = htmlspecialchars($_POST['age']);
$info = htmlspecialchars($_POST['info']);
$moreinfo = htmlspecialchars($_POST['moreinfo']);
$movie = htmlspecialchars($_POST['movie']);
$adder = htmlspecialchars($username);
$file_name=$_FILES['ufile']['name'];
$tmp_name=$_FILES['ufile']['tmp_name'];
$file_type=$_FILES['ufile']['type'];
$date = date('d.m.Y - H:i');
$path_small="upload/small/".basename(strtolower($file_name));
upload_small($tmp_name,$file_type,$path_small);
echo '<br><img src="'.$path_small.'" alt=""><br>';
echo '<br>'.URL.$path_small.'<br>';
$title = $_POST['title'];
$res = mysql_query("INSERT INTO `bio` (`id`, `name`,`age`, `info`, `moreinfo`, `movie`, `date`,`adder`,`photo`,`thumb`) VALUES('','$name','$age','$info','$moreinfo','$movie','$date','$adder','$putq','$path_small')") or die(mysql_error());
echo "Биографията е добавена успешно!.<br>
";
}
} else {echo "Снимката не е качена";}
}
else
{
if(!function_exists("gd_info")){
echo 'GD Graphics Library не е инсталирана на този сървър!';
}else{
echo '<center>
<form action="" method="post" enctype="multipart/form-data">

Име на личността <font color="red">*</font> :(<i>Пълното име!</i>) <br/><input type="text" name="name" class="grafi" size="70"><br>
<br>
Дата на Раждане <font color="red">*</font> : <br/><input type="text" name="age" class="grafi" size="70"><br>
<br>
Информация  <font color="red">*</font> :<br/> <textarea name="info" class="grafi" style="width: 360px; height: 400px;"></textarea><br>
<br>
Допълнително  <font color="red">*</font> :<br/> <textarea name="moreinfo" class="grafi" style="width: 360px; height: 200px;"></textarea><br>
<br>
Филмография <font color="red">*</font> :(<i>Филмите се разделят с запетая !</i>) <br/><input type="text" name="movie" class="grafi" size="70"><br>
<br>
<input type="file" name="ufile" class="search"><br>
<input type="submit" name="upload" value="Качи" class="search">
</form></center>
';
}
}
?>
 
Fakeheal каза:
Ev0luti0N каза:
Сложи това:
PHP:
mysql_query("SET NAMES SET utf-8");
:?:

Пробвай се да execute-неш заявката направо от PHPMYADMIN със същата информация и виж дали има проблем, ако не - файла е проблемен :D
Мадамата е права :D
Но ми се стува, че това mysql_query("SET NAMES SET utf8"); ще му оправи мъките.

П.П. Горе съм писал mysql_query("SET NAMES SET utf-8");, а трябва да е mysql_query("SET NAMES SET utf8");
 
galabin123 каза:
Ev0luti0N каза:
Сложи това:
PHP:
mysql_query("SET NAMES SET utf-8");
:?:
същата работа :(


За да няма разни "йероглифи".

Страницата ти трябва да е UTF8 WITHOUT BOM.
Мета тага за charset-a трябва да е UTF-8.
Базата ти данни да е с utf8_unicode_ci.
След кънекцията и селектирането на DB да имаш
mysql_query("SET NAMES SET utf8").

Би трябвало да нямаш никакви проблемчета :D

Еdit: Ето по-подробна информация как да изглеждат всичките нещица - http://web-tourist.net/login/login/view.php?st=3014
 
Fakeheal каза:
galabin123 каза:
Ev0luti0N каза:
Сложи това:
PHP:
mysql_query("SET NAMES SET utf-8");
:?:
същата работа :(


За да няма разни "йероглифи".

Страницата ти трябва да е UTF8 WITHOUT BOM.
Мета тага за charset-a трябва да е UTF-8.
Базата ти данни да е с utf8_unicode_ci.
След кънекцията и селектирането на DB да имаш
mysql_query("SET NAMES SET utf8").

Би трябвало да нямаш никакви проблемчета :D
Не е задължително да се правят две заявки за SET NAMES SET utf8, по-добре е да се сложи накрая. :?:
 
galabin123 каза:
еми навсякъде ми е утф само таг нямаше сложих и пак ...
Сложи ли mysql_query("SET NAMES SET utf8"); погледни как се пише няма - между utf и 8. Провери си файла какъв екодинг е. И този таг не ти трябва ако е само PHP код файла. По-добре сложи най-горе header("Content-Type:text/html; charset=utf-8");
 
galabin123 каза:
дам всичко е така проблема е при добавяне на инфо
Как ти се казва пробменливата ако е $text;
PHP:
$text = 'Въведи текста тук..';
$text = utf8_encode($text);
$text = htmlspecialchars($text);
echo $text;
Хубаво също е да слагаш addslashes
PHP:
$text = addslashes($text);
 
PHP:
<meta http-equiv="Content-Type" content="text/html;charset=utf8"/>
<?php 
include "config.php";
if ($_POST['upload']) {
$putq = 'upload/'.basename($_FILES['ufile']['name']);
if (@copy($_FILES['ufile']['tmp_name'], $putq)) {
list($width, $height, $type) = getimagesize("$putq");
if ($width > 1500) {
echo "Снимката е прекалено голяма. Снимката не е качена.";
unlink($putq);
}
else {
function upload_small($tmp_name,$file_type,$path_small){
if($file_type=="image/pjpeg" or $file_type=="image/jpeg" or $file_type=="image/gif" or $file_type=="image/x-png" or $file_type=="image/png"){//проверка дали файлът е картинка
list($width,$height) = getimagesize($tmp_name);
define("WIDTH","150");
define("HEIGHT","112");
if($width<WIDTH and $height<HEIGHT){
move_uploaded_file($tmp_name,$path_small);
}elseif($width>=WIDTH){
$new_width= WIDTH;
$new_height= (int) ($height*$new_width)/$width;
if($file_type=="image/pjpeg" or $file_type=="image/jpeg"){
$imagecreatefrom="imagecreatefromjpeg";
}elseif($file_type=="image/gif"){
$imagecreatefrom="imagecreatefromgif";
}elseif($file_type=="image/x-png" or $file_type=="image/png"){
$imagecreatefrom="imagecreatefrompng";
}
$image_p=imagecreatetruecolor($new_width, $new_height);
$image=$imagecreatefrom($tmp_name);
imagecopyresampled($image_p, $image, 0, 0, 0, 0, $new_width, $new_height, $width, $height);
imagejpeg($image_p, $path_small, 100);
}elseif($height>=HEIGHT){
$new_height= HEIGHT;
$new_width= (int) ($width*$new_height)/$height;
if($file_type=="image/pjpeg" or $file_type=="image/jpeg"){
$imagecreatefrom="imagecreatefromjpeg";
}elseif($file_type=="image/gif"){
$imagecreatefrom="imagecreatefromgif";
}elseif($file_type=="image/x-png" or $file_type=="image/png"){
$imagecreatefrom="imagecreatefrompng";
}

$image_p=imagecreatetruecolor($new_width, $new_height);
$image=$imagecreatefrom($tmp_name);
imagecopyresampled($image_p, $image, 0, 0, 0, 0, $new_width, $new_height, $width, $height);
imagejpeg($image_p, $path_small, 100);
}
}else{ echo 'Файлът не е картинка!'; return; }
}
define("URL","http://localhost/video/");
$username = $_SESSION['username'];
$name = htmlspecialchars($_POST['name']);
$age = htmlspecialchars($_POST['age']);
$info = htmlspecialchars($_POST['info']);
$info = utf8_encode($info);
$moreinfo = htmlspecialchars($_POST['moreinfo']);
$movie = htmlspecialchars($_POST['movie']);
$adder = htmlspecialchars($username);
$file_name=$_FILES['ufile']['name'];
$tmp_name=$_FILES['ufile']['tmp_name'];
$file_type=$_FILES['ufile']['type'];
$date = date('d.m.Y - H:i');
$path_small="upload/small/".basename(strtolower($file_name));
upload_small($tmp_name,$file_type,$path_small);
echo '<br><img src="'.$path_small.'" alt=""><br>';
echo '<br>'.URL.$path_small.'<br>';
$title = $_POST['title'];
mysql_query("SET NAMES SET utf8").
$res = mysql_query("INSERT INTO `bio` (`id`, `name`,`age`, `info`, `moreinfo`, `movie`, `date`,`adder`,`photo`,`thumb`) VALUES('','$name','$age','$info','$moreinfo','$movie','$date','$adder','$putq','$path_small')") or die(mysql_error());
echo "Биографията е добавена успешно!.<br>
";
}
} else {echo "Снимката не е качена";}
}
else
{
if(!function_exists("gd_info")){
echo 'GD Graphics Library не е инсталирана на този сървър!';
}else{
echo '<center>
<form action="" method="post" enctype="multipart/form-data">

Име на личността <font color="red">*</font> :(<i>Пълното име!</i>) <br/><input type="text" name="name" class="grafi" size="70"><br>
<br>
Дата на Раждане <font color="red">*</font> : <br/><input type="text" name="age" class="grafi" size="70"><br>
<br>
Информация  <font color="red">*</font> :<br/> <textarea name="info" class="grafi" style="width: 360px; height: 400px;"></textarea><br>
<br>
Допълнително  <font color="red">*</font> :<br/> <textarea name="moreinfo" class="grafi" style="width: 360px; height: 200px;"></textarea><br>
<br>
Филмография <font color="red">*</font> :(<i>Филмите се разделят с запетая !</i>) <br/><input type="text" name="movie" class="grafi" size="70"><br>
<br>
<input type="file" name="ufile" class="search"><br>
<input type="submit" name="upload" value="Качи" class="search">
</form></center>
';
}
}
?>
 

Back
Горе