» »

mySQL prikaz apostrof

mySQL prikaz apostrof

-=aVa=- ::

LP!
Imam težavo z apostrofi v formih.

Tu je moja koda:
$result = mysql_query("SELECT ms FROM members WHERE username='$_SESSION[username]'") 
or die(mysql_error());  
while ($row = mysql_fetch_object( $result )) {
echo" <div> <form method='POST' action='index.php'>
<input type='text' size='100%' name='ms' value='$row->ms'>
<input type='submit' name='submit' value='Send'>
</form></div>";


V glavnem. Težava je v tem, da če v input field napišem "I'm a monkey", mi za value pri input fieldu prikaže samo "I"
Sem delal tudi z stripslashi in escape stringi ampak v tem primeru preprosto ne vem, kam naj to postavim.

V bazo mi lepo shrani, ampak če je slučajno kaj tu, še koda za input:
if (isset($_POST['submit']) ) {
$ms=($_POST['ms']);
mysql_query ("UPDATE members SET ms = '$ms' WHERE username='$_SESSION[username]'");
}


Še enkrat, težava je v input fieldu za value.
Hvala vnaprej.
Small acts.. Big difference.. Save our planet!

KoMar- ::

Povsem osnovno vprašanje, odgovor na katerega bi ti moral bit jasen, če si prebral en sam spodoben PHP+MySQL vodič. In ga boš šel še enkrat, če nočeš, da tvoj web app pohekajo v 5 sekundah.

Sem delal tudi z stripslashi in escape stringi ampak v tem primeru preprosto ne vem, kam naj to postavim.

Te metode imajo točno določen namen in se jih ne meče kot olje in kis v solato, tu in tam malo... v tvojem primeru logično manjka escape.

Zgodovina sprememb…

  • spremenil: KoMar- ()

-=aVa=- ::

V bistvu sta bila odveč tista dva ' za value.
Kr bedna napaka ampak vsaj nisem edin, ki je ni opazil.
Small acts.. Big difference.. Save our planet!

KoMar- ::

Zgodovina sprememb…

  • spremenil: KoMar- ()

dolegar ::

najbolje, da začneš uporabljati kak db class..

v tvojem primeru pa..

$result = mysql_query("SELECT ms FROM members WHERE username='" . mysql_real_escape_string($_SESSION[username]) . "'");

to velja za vse spremenljivke!
ThinkPad T60 (intel Core2duo T7400 @ 2.16GHz)
15.4" 1680×1050 FlexView
Ram: 2GB Disk: Hitachi 120GB

technolog ::

Komar, zanimivo se spopadaš s tem problemom. Uporabljaš potem flag ENT_QUOTES?

-=aVa=- ::

Hvala vam za odgovore.. Sicer sem problem rešil brez vaše pomoči:

<input type='text' size='100%' name='ms' value="<?php echo $row["ms"]; ?>">


In še to.. Nisem ne vem kako dober, ko pride do programiranja. Razumem kako kaj deluje, vendar v večini primerov ne znam postaviti kode.
Za to stran, ki jo zdaj delam (Stran na kateri se učim in je brez vsakega pomena), sem vprašal za pomoč na tem forumu samo 2x. In imam veliko funkcij. Še admin mi ni delal težav, čeprav je edina funkcija v adminu dodajanje novic. Torej 2x sem vprašal za pomoč in vse kaj dobim so odgovori kot:
Poglej si osnove tega, poglej si osnove tistega in linke do php.net. Saj je vendar logično, da sem že neštetokrat pregledal php.net in nisem našel uporabnega primera za mojo težavo. Opravičujem se, če se komu to zdi tako neverjetno. Pač nisem tako dober v tem kot vi. Bi pa se rad še veliko stvari naučil. In jaz se ne učim s tem, da si nekje preberem definicijo in uporabnost neke funkcije, ampak s tem kaj funkcija dejansko naredi.

Hvala še enkrat.
LP
Small acts.. Big difference.. Save our planet!

MrBrdo ::

Pač KoMar- ti je hotel povedat, da tako kot ti delaš ti lahko še največji bedak poheka stran v pol minutke. Mal si poglej mysql escaping php al kej takega pogoogli. To je ornk pomembna stvar.
MrBrdo

technolog ::

Ava, tole kr si napisal pa je to čisto druga stvar, kot si jo spraševal v začetku teme.

Komar nima pojma, če rešuje problem mysql injectiona in escapanja posebnih SQL znakov z htmlspecialchars(). Ali pa zgolj ni bral teme.

Zgodovina sprememb…

-=aVa=- ::

V glavnem. Težava je v tem, da če v input field napišem "I'm a monkey", mi za value pri input fieldu prikaže samo "I"


To je to, kar sem spraševal. Za value v input fieldu.

Torej mi teksta ni prikazovalo dalje od apostrofa. Pol sem videl, da imam za value tudi apostrofe: value='...'
in še tisti apostrof v tekstu z mysqla pa se vse zmeša.
Ampak brez apostrofov po value mi pa je prikazalo samo eno besedo, to je jasno zakaj. Zgoraj pa sem že povedal, kako sem problem rešil.

Mogoče je ker narobe razumel ali pa sem smešno napisal. Se opravičujem.
Small acts.. Big difference.. Save our planet!

Zgodovina sprememb…

  • spremenil: -=aVa=- ()


Vredno ogleda ...

TemaSporočilaOglediZadnje sporočilo
TemaSporočilaOglediZadnje sporočilo
»

PHP povezava z Mysql

Oddelek: Izdelava spletišč
16936 (781) snooze77
»

PHP in objektno programiranje (strani: 1 2 )

Oddelek: Programiranje
8512158 (10625) kivi113
»

MySQL Query Vprašanje

Oddelek: Izdelava spletišč
153230 (2995) overlord_tm
»

Spletna videoteka

Oddelek: Programiranje
243893 (3083) nuclear
»

[php, mysql] sortiranje izpisa iz baze

Oddelek: Izdelava spletišč
262698 (2217) Binji

Več podobnih tem