Bywalec
Postów: 376 Pomógł: 30 Ostrzeżeń: 3
v7.00.05 Data rejestracji: 25.07.2008 13:11
|
Witam,
Napisałem bardzo prosty skrypt PHP do edycji rekordu w MYSQL i niestety zostałem niemile zaskoczony :(
Mianowicie wszystko działa ok na moim serwerze, niestye jak wrzuciłem skrypt na 2 inne jest dobrze jak edytujemy dość krótki wpis, a jak damy coś dlyższego jak w pinkty 2, pokazuje błąd:
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 'ie. Chęć dołączenia będzie traktowana jako akceptacja
' at line 1You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'ie. Chęć dołączenia będzie traktowana jako akceptacja
Kod:
$edytuj_ogloszenie = dbquery("UPDATE strona_strona SET
tytul = '".$_POST['tytul']."',
tresc = '".$_POST['tresc']."'
WHERE id = '".$_POST['id']."'");
if ($edytuj_ogloszenie) {
header("Location: http://".$_SERVER['HTTP_HOST'].$_SERVER['SCRIPT_NAME']."?info=5");
} else {
header("Location: http://".$_SERVER['HTTP_HOST'].$_SERVER['SCRIPT_NAME']."?info=6");
}
2. Problematyczny text
<p class="western">Regulamin niniejszy określa zasady funkcjonowania
grupy KSZ, która została założona w oparciu o aplikację WhatsApp.
Informacje o niej dostępne są również na stronie internetowej pod
adresem:</p>
<p class="western"><a href="http://tyfloksz.pl/">http://tyfloksz.pl</a></p>
<p class="western">Administratorem grupy jest Piotr Tarasewicz. Aby
do niej dołączyć należy kliknąć w odnośnik poniżej:</p>
<p class="western"><a href="http://tyfloksz.pl/strona.php?id=5">Regulamin</a></p>
<p class="western">zapoznać się z niniejszym regulaminem i po jego
akceptacji wyrazić chęć dołączenia poprzez kontakt mailowy, pisząc
pod adres:</p>
<p class="western"><a href=""></a></p>
<p class="western">wiadomość, w której treści należy podać swoje imię
lub pseudonim oraz numer telefonu, który ma zostać dołączony do grupy
na WhatsApp'ie. Chęć dołączenia będzie traktowana jako akceptacja
warunków niniejszych zasad.</p>
<p class="western">Grupa została utworzona w 2017 roku. Służy ona do
gromadzenia ofert użytkowników, którzy chcieliby kupić, sprzedać lub
zamienić na coś posiadane przedmioty, zaoferować usługi indywidualne
lub chcieliby skorzystać indywidualnie z usług świadczonych przez
innych użytkowników.</p>
<p class="western">Poniżej przedstawiono ogólne zasady funkcjonowania
grupy:</p>
<p class="western"><br/>
<br/>
</p>
<p class="western">1. Na grupie w pierwszej kolejności należy
umieszczać oferty kupna, sprzedaży lub chęci zamiany, przyjęcia bądź
oddania posiadanych przedmiotów.</p>
<p class="western">2. Dopuszcza się zamieszczanie ogłoszeń, które
oferują indywidualne usługi, jak również takich, które zgłaszają
zapotrzebowanie na usługi świadczone przez innych użytkowników.</p>
<p class="western">3. Zastrzega się, żeby oferty o charakterze
usługowym nie stanowiły większości ogłoszeń publikowanych na łamach
grupy.</p>
<p class="western">4. Nie dopuszcza się i nie będzie tolerowane:
Wywyższanie się ponad innych, napastliwość wypowiedzi, komentowanie
ofert, obrażanie uczestników grupy, wzajemne animozje, nadmierne
używanie słów ogólnie uważanych za obraźliwe.</p>
<p class="western">5. Na grupie nie komentujemy ceny oferowanego
produktu, nawet, jeśli uważa się ją za wygórowaną lub zaniżoną.</p>
<p class="western">6. Komunikacja na grupie (zarówno bieżące sprawy
jak i dodawanie ofert), powinna być przede wszystkim w formie
wiadomości głosowych, w drugiej kolejności w formie tekstowej.</p>
<p class="western">7. W ofercie sprzedaży, kupna lub zamiany powinny
znaleźć się informacje:</p>
<p class="western">A – imię użytkownika;</p>
<p class="western">B – rodzaj oferty: sprzedam, kupię lub
zamienię, oddam lub przyjmę;</p>
<p class="western">C – nazwa oferowanego produktu;</p>
<p class="western">D – opis produktu z podaniem dokładnego
modelu i jeśli to możliwe łącza do takiego samego produktu w
internecie.</p>
<p class="western">Opis produktu powinien być uczciwy i rzetelny,
jeśli sprzedawany przedmiot był używany, proszę podać przybliżony
termin od kiedy do kiedy, jeśli przedmiot nosi ślady użytkowania
powinien zostać zaznaczony stopień zużycia np. w bardzo dobrym
stanie, w dobrym stanie – minimalne przetarcia, zarysowania
itp.</p>
<p class="western">Jeśli oferowany produkt jest nowy, za właściwe
uznaje się podanie krótkiej informacji o powodzie sprzedaży;</p>
<p class="western">E – proponowana cena z zaznaczeniem czy
podlega ona negocjacji, jeśli to możliwe proszę także o podanie
orientacyjnej ceny na rynku np. z internetu;</p>
<p class="western">F – forma dostarczenia, rodzaj i koszt
wysyłki, informacja czy możliwy jest odbiór osobisty.</p>
<p class="western">8. Dozwolone jest umieszczanie zdjęcia oferowanego
przedmiotu.</p>
<p class="western">9. Dopuszcza się na grupie oferty świadczenia
usług indywidualnych, zgłoszenia chęci skorzystania z potrzeby
objęcia usługą świadczoną przez innego użytkownika w formie
odpłatnej, nieodpłatnej, wymiennej. Oferty takie w szczególności
powinny dotyczyć usług szkoleniowych, naprawy sprzętu, czynności
zawodowych itp. Oferty takie powinny zawierać:</p>
<p class="western">A. Imię;</p>
<p class="western">B. Rodzaj oferowanej usługi lub rodzaj
interesującej mnie usługi;</p>
<p class="western">C. Dokładny opis wykonywanej usługi, lub dokładne
sprecyzowanie o jaką usługę chodzi;</p>
<p class="western">D. Cennik oferowanej usługi wraz z informacją, czy
podlega on negocjacji;</p>
<p class="western">E. Miejsce, gdzie taka usługa mogłaby zostać
wykonana i ewentualna informacja o cenniku dojazdu, dowozu,
przysłania, odesłania itp.;</p>
<p class="western">F. Zakres usługi, to jest co usługa obejmuje (na
przykład: masaż obejmuje całe ciało lub specjalizuję się w masowaniu
kręgosłupa);</p>
<p class="western">10. Bardzo ważne: Jeśli oferta jest już
nieaktualna, uprasza się o jak najszybsze umieszczenie informacji o
tym na grupie w formie krótkiej wiadomości głosowej, ewentualnie
tekstowej.</p>
<p class="western">11. Nie dopuszcza się rozmów na grupie dotyczących
ofert.</p>
<p class="western">12. Wszelkie ewentualne negocjacje dotyczące ofert
powinny być przeprowadzane w komunikacji prywatnej pomiędzy stronami
zainteresowanymi daną ofertą.</p>
<p class="western">13. Administracja grupy nie ponosi
odpowiedzialności za jakąkolwiek nierzetelność osób, które zamieściły
ofertę na grupie.</p>
<p class="western">14. Wszelkie spory dotyczące przebiegu bądź
finalizacji transakcji, powinny być rozstrzygane prywatnie między
stronami biorącymi w niej udział. Administracja nie będzie
uczestniczyć w mediacjach ani w rozwiązywaniu problemów.</p>
<p class="western">15. Sprzedawane przedmioty muszą być zgodne z
polskim prawem. Zakazuje się sprzedaży towarów, które naruszają prawo
RZECZYPOSPOLITEJ POLSKI.</p>
<p class="western">16. Wszelkie sugestie dotyczące niniejszych zasad
przyjmuje administracja grupy poprzez głosową wiadomość prywatną na
WhatsApp'ie.</p>
<p class="western">17. Notoryczne nieprzestrzeganie zasad
niniejszego Regulaminu będzie skutkowało dwoma ostrzeżeniami a
następnie usunięciem z grupy bez możliwości powrotu przez rok od
terminu usunięcia (przy założeniu, że niniejsza grupa będzie
istnieć).</p>
<p class="western">Administracja życzy owocnego i miłego korzystania
z grupy.</p>
|
Początkujący
Postów: 118 Pomógł: 14
v7.02.07 Data rejestracji: 23.06.2006 22:47
|
Problem jest taki, że znaki specjalne w tekście zakłócają Ci zapytanie (i otwierają przy okazji pole do injecta)
WhatsApp'ie.
Masz to dwa razy w tekście i właśnie przez znak ' Twoje zapytanie psuje się, bo zmienne budujesz tak:
$tekst = 'Twój tekst';
I jeśli fragmentem tekstu jest znak specjalny ', to interpreter się w najlepszym przypadku pogubi (jak u Ciebie), bo napotkał na zmienną, która nie jest zakończona średnikiem. Natomiast gdyby go dodać i później od razu wykonać polecenie usunięcia całej bazy, byłoby mniej przyjemnie.
W tym przypadku, jeśli poprzedzisz ' znakiem \ to tekst będzie prawidłowy. Natomiast, jeśli masz już taki zapis, to do odczytu z kolei musisz użyć stripslashes()
Przyjmuję zlecenia pracy nad PHP-Fusion, Wordpress, Symfony, PHP-Nuke, Post-Nuke
Technologie: PHP (Symfony3-4), SQL, JS (JQ), XML, XHTML, HTML5, CSS3, SCSS, SASS, C, C++, C#
Zawód: Full-Stack Developer z naciskiem na Backend
You live once, but if You do it right, once is enough.
|