[PHP] Prob bij mysql_query met "-teken in result

Pagina: 1
Acties:

  • Flake
  • Registratie: Februari 2001
  • Laatst online: 01-11-2024
/me zit met een probleem :)
Ik heb iets wat op een online shop lijkt. Als ik een product wil uploaden waar het teken " in voorkomt, doet hij dat perfect.

Maar als ik die wil editen, dan geeft hij alleen result totaan het "-teken. Alles wat daarna komt wil hij niet weergeven. In theorie gebruik ik deze code:
PHP:
1
<?$sql = "SELECT naam FROM $table WHERE id = $id";$result = mysql_query($sql) or die ("Foute query");$row = mysql_fetch_array($result);$naam = $row["naam"];echo "$naam";?>

Dus stel die naam in de DB is
code:
1
Gathering of "Tweakers"

Dan komt eruit:
code:
1
Gathering of

Waar zit mijn fout? Hulp is gewaardeerd :)

Verwijderd

Weet het niet zeker hoor, maar kijk eens naar addslashes.
http://www.php.net/manual/en/function.addslashes.php

En dit bij het invoegen van data in je DB.

Verwijderd

Op zaterdag 13 april 2002 21:11 schreef SONiCB00M het volgende:
PHP:
1
<?$sql = "SELECT naam FROM $table WHERE id = $id";$result = mysql_query($sql) or die ("Foute query");$row = mysql_fetch_array($result);$naam = $row["naam"];echo "$naam";?>
adslashes of
gewoon ' ' gebruiken :)

edit:

donders opmaak niet mooi

  • Flake
  • Registratie: Februari 2001
  • Laatst online: 01-11-2024
Ik heb onderin toegevoegd:
PHP:
1
<?$naam = addslashes($naam);?>

Nu komt eruit:
code:
1
Gathering of \

Verwijderd

$naam = addslashes($row['naam']);

lijkt me iets logischer (weet zo niet zeker);

edit:

Komt op hetzelfde neer die 2 aparte regels dat weet ik.
maar mijn persoontje doelde meer op de andere aanhalingstekens.
Probeer zelfs meestal alles compact te houden vandaar :)

  • Flake
  • Registratie: Februari 2001
  • Laatst online: 01-11-2024
Op zaterdag 13 april 2002 21:20 schreef Devinity het volgende:
$naam = addslashes($row['naam']);

lijkt me iets logischer (weet zo niet zeker);
Komt op hetzelfde neer
PHP:
1
<?$naam = $row['naam'];$naam = addslashes($naam);of:$naam = addslashes($row['naam']);?>

Maar het heeft de boel niet verbeterd ;(

  • rvrbtcpt
  • Registratie: November 2000
  • Laatst online: 08-09 22:01
Omdat de naam nog fout in de database staat waarschijnlijk.
Je moet hem met addslashes erin zetten en met eh .. shit hoe heet ie, removeslashes of zoiets weer eruit halen.
Hij moet \"Tweakers\" zo in je database staan.

  • Flake
  • Registratie: Februari 2001
  • Laatst online: 01-11-2024
Waarom kan PhpMyAdmin dan wel zonder problemen "-waardes uit de DB halen zonder dat er slashes in de DB staan :?

  • Sjeik
  • Registratie: Augustus 2001
  • Laatst online: 02-09 09:23
Op zaterdag 13 april 2002 21:26 schreef Frijns.Net het volgende:
Omdat de naam nog fout in de database staat waarschijnlijk.
Je moet hem met addslashes erin zetten en met eh .. shit hoe heet ie, removeslashes of zoiets weer eruit halen.
Hij moet \"Tweakers\" zo in je database staan.
stripslashes geloof ik ;)
Maar je hebt ook zoiets als htmlspecialvars ofzo, dan zou mysql het nooit verkeerd kunnen gebruiken, zoek daar eens naar. (of naar zoiets als htmlspecialvars, kweet niet hoe je het pcies schrijft.

Was ik maar rijk en niet zo knap...


Verwijderd

Op zaterdag 13 april 2002 22:13 schreef SONiCB00M het volgende:
Waarom kan PhpMyAdmin dan wel zonder problemen "-waardes uit de DB halen zonder dat er slashes in de DB staan :?
Omdat PHPMyAdmin een stripslashes uitvoert voordat ie de data aan jou laat zien...

  • ACM
  • Registratie: Januari 2000
  • Niet online

ACM

Software Architect

Werkt hier

Btw, voor data invoer moet je niet addslashes maar mysql_escape_string gebruiken...

  • Tachyon
  • Registratie: Januari 2000
  • Laatst online: 17-08 14:06

Tachyon

pop the glock

Moet je niet gewoon Magic Quotes uitzetten in PHP? Of was het juist aanzetten :? ;)

If we do not change our direction, we will likely end up where we are heading.


  • Erik Jan
  • Registratie: Juni 1999
  • Niet online

Erik Jan

Langzaam en zeker

Volgens mij ligt het niet aan je query, maar aan je HTML. Als je de string
code:
1
Gathering of "Tweakers"

echo't in de value parameter van je <INPUT> veldje,
code:
1
<input type="text" name="bla" value="Gathering of "Tweakers"">

Dan laat je browser alleen het deel voor de eerste " zien.

Oplossing -> string eerst door htmlspecialchars() halen, dan pas echo'en.

This can no longer be ignored.


  • Janoz
  • Registratie: Oktober 2000
  • Laatst online: 09-09 20:58

Janoz

Moderator Devschuur®

!litemod

Gelukkig komt Erik Jan na 12 reacties eindelijk met het enige juiste antwoord aanzetten. Waneer de topicstarter ff in zijn source had gekeken had ie het natuurlijk zelf ook kunnen zien ;).. Zo blijkt maar weer dat je soms net iets verder moet kijken dan je neus lang is :)

Ken Thompson's famous line from V6 UNIX is equaly applicable to this post:
'You are not expected to understand this'


  • CyberSnooP
  • Registratie: Augustus 2000
  • Laatst online: 08-09 20:35

CyberSnooP

^^^^ schrijft --->

Op zondag 14 april 2002 15:46 schreef Janoz het volgende:
Gelukkig komt Erik Jan na 12 reacties eindelijk met het enige juiste antwoord aanzetten. Waneer de topicstarter ff in zijn source had gekeken had ie het natuurlijk zelf ook kunnen zien ;).. Zo blijkt maar weer dat je soms net iets verder moet kijken dan je neus lang is :)
Sweet: Een moraal van het verhaal!

|_____vakje______|

Pagina: 1