2015-01-23 2 views
1

Я использую текстовые вложения html и CKEditor, чтобы клиент мог вставлять сообщения в базу данных блога. Ввод изображения принимает тег html img, например, и CKEditor также отправляет теги img, если вы решите вставить изображение.PHP inserting in sql table

Моя проблема в том, что PHP вставляет обратную косую черту для кавычек в тегах img, я просто не уверен, как предотвратить это. Я посмотрел документацию, но не хочу делать ничего, что могло бы нанести вред. Какие-либо предложения? Прошло некоторое время с тех пор, как я использовал PHP и SQL.

// set parameters and execute 
    $title = $_POST['postBlogTitle']; 
    $content = $_POST['editor1']; 
    $image = $_POST['postBlogImage']; 

// Create connection 
    $conn = new mysqli($servername, $username, $password, $dbname); 

    // Check connection 
    if ($conn->connect_error) { 
    die("Connection failed: " . $conn->connect_error); 
    } 

    // prepare and bind 
    $stmt = $conn->prepare("INSERT INTO Blog (TITLE, CONTENT, IMAGE) VALUES (?, ?, ?)"); 
    $stmt->bind_param("sss", $title, $content, $image); 
+0

какой тип изображение column? строка? – Jay

+0

@Jay varchar для столбцов изображения и содержимого. – SteveMills04

+4

Мое предположение, что вы включили 'magic_quotes_gpc' в своей конфигурации PHP. http://php.net/manual/en/security.magicquotes.php – Barmar

ответ

0

Чтобы помочь тем, кто может увидеть это в будущем:

Чтобы проверить, если magic_quotes_gpc включен:

Вставьте следующий код в файл PHP и загрузить файл на ваш сайт в той же папке, что и index.html. Посетите URL (www.myWebsite.com/phpinfo.php)

<?php phpinfo() ?> 

Прокрутка вниз, и вы будете в конечном итоге найти его вместе со статусом. Как сказал @Barmar, если включен, используйте stripslashes().

0

Попробуйте использовать stripslashes.

$image = stripslashes($_POST['postBlogImage']);