Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [MYSQL] Problem z typem danych TEXT
Forum PHP.pl > Forum > Przedszkole
Tomplus
Mam mały problemik, i już zmęczony jestem nim, bo utrudnia mi pracę.

Ostatnio stworzyłem sobie bazę danych, świeżo. Wszystko byłoby dobrze gdyby nei to że ...
jedna z tabel nie funkcjonuje zbyt dobrze - jest to tabela na trzymanie zawartości strony.

Takie mam zapytanie do bazy:
  1. <?php
  2. mysql_query("INSERT INTO `tom_text`
  3.  (name, status, lang, title, date, content, author ) 
  4.  VALUES ('{$name}','{$status}','{$lang}','{$title}','{$date}','{$content}','{$author}');");
  5. ?>


NAZWA TYP CHAR NULL
tid int(10) Nie auto_increment
name varchar(64) utf8_bin Nie
status int(2) Nie 0
lang int(2) Nie 0
title varchar(255) utf8_bin Nie
date varchar(16) utf8_bin Nie
content text utf8_bin Nie
author int(10) Nie
w sume nic szczególnego z wyjątkiem tego co pogrubiłem ;(

Dodając zapytanie jakie zaprezentowałem powyżej: Nic się nie dodaje, nic się nie wyświetla z parsera.
gdy usunąłem content, oraz VALUE '{$content}','
każda treść jaką chciałem się dodaje. Wcześniej ustawiłem na binarną treść ale to samo.

Pytanie dlaczego się tak dzieje ? Jak można mi pomóc ?

Proszę o odpowiedz.


a ja nadal czekam.
nospor
Cytat
a ja nadal czekam.
A ja zaraz wysle raport o bezpodstawne podbijanie tematu tongue.gif

zastosuj sie do tych wskazowek
http://nospor.pl/php-faq-n29.html#faq-6
i powiedz co wyswietla
Tomplus
Nabijanie ?
Sorry. Myślałem że to tylko aktualizuje datę postu (coś w stylu ostatnia edycja).
Może lepiej właśnie w ten mergepost w ten rozwiązać ?


Co wyświetla ? Błąd.
Co ciekawe nie wiem dlaczego normalnie mi się nie pojawił, jak zawsze przy takich operacjach, ale już nie wnikam.
Porada była Trafiona.

Błąd był leżał w tym że dodałem text z pojedynczym apostrofem '
Powodował przy wpisaniu do bazy danych syntax error i uniemożliwiało zapis do bazy danych.

Czyli problem nie leży w BLOB czy TEXT tylko po prostu w treści wrzucanej do bazy danych.

Dzięki nospor.
nospor
Cytat
Nabijanie ?
Nie nabijanie a podbijanie - niecierpliwy jestes poprostu smile.gif

Cytat
Błąd był leżał w tym że dodałem text z pojedynczym apostrofem '
Bo dane tekstowe nalezy najpierw escapowac przed wlozeniem do bazy. Zajrzyj do manuala php i poczytaj o mysql_escape_string()
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.