Et text-felt, der indeholder php string variable m tekst "From"
Hej EksperterJeg har en tabel, der indeholder et felt af typen TEXT. Dette bruges til at indeholde en del php-kode og det ser ud til at virke fint og har gjort det i 2 år. I onsdags opdaterede jeg et af disse felter uden problemer.
I torsdags opdaterede jeg en anden række med noget lignende indhold, men fik nu en fejl. Jeg har kunnet indsnævre problemet til følgende. Hvis jeg f.eks. vil have indholdet af feltet til være '$var = "Hello World";' går det fint og jeg kan udføre følgende update:
UPDATE min_tabel SET felt1 = '$var = "Hello World";' WHERE id = 1;
Det går fint og jeg behøver ikke engang at backslashe gåseøjnene (").
Hvis jeg nu i stedet skriver
UPDATE min_tabel SET felt1 = '$var = "From: min_email";' WHERE id = 1;
så går det galt og jeg får følgende fejl:
Fejl
There seems to be an error in your SQL query. The MySQL server error output below, if there is any, may also help you in diagnosing the problem
ERROR: Unclosed quote @ 28
STR: '
SQL: UPDATE mintabel SET felt1 = '$var="Wrom: ZUIVOTQNQEMSFD
SQL-forespørgsel :
UPDATE mintabel SET felt1 = '$var="Wrom: ZUIVOTQNQEMSFD
MySQL returnerede:
#1064 - You have an error in your SQL syntax near ''$var="Wrom: ZUIVOTQNQEMSFD' at line 1
Slut på fejlmeddelelse
Efter længere tids mailen frem og tilbage med den server-udbyder, hvor min MySQL er, har supporteren kastet håndklædet i ringen og påstår, at det er en kode-fejl.
Han har dog ikke svaret på, hvorfor vi kan have 1000'er linier kode, som fungerer og hvorfor den første update fungerer og hvorfor den anden ikke gør.
Så vidt jeg kan se har det noget at gøre med at "From:" bruges i e-mail sammenhæng, men skulle det ikke være tilladt at skrive kode, der kan sende e-mails ?
Jeg har løst problemet ved at skrive
$var = "From".": min_email";
så det behøver I ikke skrive, blot om det er dokumenteret at man ikke må skrive det ene eller det andet, eller om I mener det er en MySQL-fejl.
På forhånd tak !
Peter_R