LÖSUNG
Code: Alles auswählen
$sql = "replace (SpecialProductLink, '!', '-');";
$sql = "replace (SpecialProductLink, '"', '-');";
$sql = "replace (SpecialProductLink, '%', '-');";
weiter unten nochmal mit Erklärung
antonia hat geschrieben:
Code: Alles auswählen
$sql = "UPDATE `$dbtabelle` SET SpecialProductLink = replace (SpecialProductLink, '"', '-');";
$sql = "UPDATE `$dbtabelle` SET SpecialProductLink = replace (SpecialProductLink, '%', '-');";
....
beim letzten ist das "%" in php ansicht schon farblich hervorgehoben = bedeutet nichts gutes. und so ist es auch, der browser meckert diese Zeile an:
Parse error: syntax error, unexpected T_CONSTANT_ENCAPSED_STRING
Hast Du Rat? Ich bekomm das nicht hin. Sollte ich da nochmal was "klammern" in den zeilen, so als Idee?
Dasselbe bei ( ) = ? + # (die Raute ist mal nicht blau sondern gelb dargestellt = ganz schlecht:-(
---- beim letzten ist das "%" in php ansicht ---
du meinst ---- , '%', '-' bzw die Zeile so was drinsteht
Die Zeile wo "Angeblich" ein Fehler ist, dort ist kein Fehler
Bildlisch ausgedrückt .....
Steckdosenwechsel, da geht man natürlich mit dem Schraubenziher in die Steckdose
Zufor sollte man die Sicherrung rausgedreht haben
Wenn beim Steckdosenwechsel ein Stromschlagfehler auftritt, dann war das ein Fahler der nichtrausgedrehten Sicherung
Programmierer nennen das Folgefehler
=
Da ist etwas falsch, das zu keinem Fehler führt
Dann geht es weiter, ganz richtig ohne Fehler ... und dann schint da ein Fehler zu sein; es wird behauptet da wäre einer, dort ist aber keiner
Code: Alles auswählen
$sql = "UPDATE `$dbtabelle` SET SpecialProductLink = replace (SpecialProductLink, '"', '-');";
$sql = "UPDATE `$dbtabelle` SET SpecialProductLink = replace (SpecialProductLink, '%', '-');";
....
Deine Zeile mit .... '%', '-' .... ist z.B. die Zeile 800
ich schreibs mal bissel um nach PHP Befehle, damit kürzer
Code: Alles auswählen
$sql = str_replace( '"', '-' , $sql );
$sql = str_replace( '%', '-' , $sql );
....
ähm, dort würde der Folgefehler garnicht auftretten
muß zurück zum SQLString
Code: Alles auswählen
$sql = "replace (SpecialProductLink, '!', '-');";
$sql = "replace (SpecialProductLink, '"', '-');";
$sql = "replace (SpecialProductLink, '%', '-');";
OK, nochmal ...... '%', '-' .... = Zeile 800 und scheint ein Fehler zu haben
mach einfach mal
Code: Alles auswählen
$sql = "replace (SpecialProductLink, '"', '-');";
$sql = "replace (SpecialProductLink, '!', '-');";
$sql = "replace (SpecialProductLink, '%', '-');";
komisch, jetzt scheint der Fehler in Zeile 799
Warum ist in 800 jetzt keiner mehr?
Der Fehler ist ...... '"', '-' ..... "Verschachtelte Strings" du baust das Strings in PHP zusammen die Strings für SQL enthalten ....
Wie lang ist der STring
vom Code her, ist der STring zuende obwohl er noch nicht zuende sein soll
LÖSUNG
Code: Alles auswählen
$sql = "replace (SpecialProductLink, '!', '-');";
$sql = "replace (SpecialProductLink, '"', '-');";
$sql = "replace (SpecialProductLink, '%', '-');";
'"', '-' ++++ \ ===== '"', '-'
Du kannst in einem $String der einen "Zaun hat (= in " Anführungszeichen eingefast ist) keine " verwenden .....
da der Parser dann denkt das der STring zuende ist
schreibe "
Escape das "
dann wird das " zu einem Befehlszeichen wo es kein Befehl gibt, = es wandert einfach in den String und das \ ist verschwunden
könnte noch weiter labern, aber ich hör vielleicht mal auf
wurde ja schon alles 5 mal gesagt
wen es zu "durscheinander" ist, dann frag nochmal
Gruß
AZ
PS
1 noch
Wenn Fehler in Zeile 666
Alles nicht so schlim, wahrscheinlich ist er in 665 oder 664 ....