Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [MySQL] backslash w stringu
Forum PHP.pl > Forum > Przedszkole
Terrorizer
Nie bardzo jestem w stanie zrozumieć, dlaczego zapisując string do tablicy, muszę użyć potrójnego backslasha, aby w ogóle owy backslash się tam pojawił.
Z czego to wynika?
nospor
To nie ma zadnego związku z tablicą..... backslash to znak specjalny i w tekscie nalezy go poprzedzic backslashem jesli chcemy miec w tekscie backslash.

Pokaz lepiej co kombinujesz, bo nie trzeba do tego az 3 backslashy
Terrorizer
W bazie pojawia się poprawna ścieżka linku dopiero w takiej formie, z potrójnym backslashem

  1. $link = "c:\\\wamp\\\upload\\\\" . $_FILES["file"]["name"];
  2. $date = date("Y/m/d");
  3. $filename = $_FILES["file"]["name"];
  4. $thisnick = $nick["nick"];
  5. mysql_query("INSERT INTO photos(user, name, date ,link) VALUES ('$thisnick', '$filename', '$date', '$link')") or die('BŁĄD:'.mysql_error());
Turson
  1. "c:\wamp\upload\\"

Problem może się pojawić przy np. \n gdzie będzie trzeba 2 backslashe
nospor
NIe Turson... tu chodzi o to, ze on te dane wklada do zapytania a ich nie escapuje..... Dane tekstowe przed wlozeniem do zapytania nalezy escapowac - mysql_escape_string - wowczas zadziala i nie trrzeba nic potrojnie backslasowac...

A na przyszlosc opisuj od razu problem a nie z jakimis tabliami wyjezdzasz.... tablica != tabela w bazie
Turson
Nie zauważyłem, że o zapytanie się rozchodzi facepalmxd.gif
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.