Olen tehnyt PHP-sivun joka siältää html-lomakkeen, jossa on seuraavanlainen koodirivi:
Tiedosto:
MySQL-tietokannassa tallennan html-lomakkeelta saadun "tiedosto" -rivin tietokenttään nimeltä tiedosto, jonka type on VARCHAR.
Eli kun tallennan html-lomakkeella esim. tiedostopolun "c:\kuvat\viimeiset\22.jpg" niin se tallentuu MySQL taulukkoon nimellä c:kuvatviimeiset22.jpg
Siis hakemistojen rajaavat kenoviivat "/" tai kauttaviivat "\" jäävät pois!
Onko vika html-lomakkeessa vai MySQl-taulukossa vai muualla??
Olen erittäin kiitollinen avusta!
Tiedosto:
MySQL-tietokannassa tallennan html-lomakkeelta saadun "tiedosto" -rivin tietokenttään nimeltä tiedosto, jonka type on VARCHAR.
Eli kun tallennan html-lomakkeella esim. tiedostopolun "c:\kuvat\viimeiset\22.jpg" niin se tallentuu MySQL taulukkoon nimellä c:kuvatviimeiset22.jpg
Siis hakemistojen rajaavat kenoviivat "/" tai kauttaviivat "\" jäävät pois!
Onko vika html-lomakkeessa vai MySQl-taulukossa vai muualla??
Olen erittäin kiitollinen avusta!
Vastaukset 2
Vanhimmat
\ sattuu olemaan erikoismerkki, jonka avulla esitetään muita erikoismerkkejä, kuten esimerkiksi lainausmerkkejä tyyliin
echo "Oletko vähän \"toope\" ";
Eli edellisessä php tajuaa, että lainausmerkkien sisällä olevia lainausmerkkejä ei tulkita vaan tulostetaan sellaisenaan.
Jos haluat tulostaa/kirjoittaa kenoviivan johonkin, niin käytä siis
echo "Tässä on kenoviiva \\";
Tuo tulostaa Tässä on kenoviiva \
Tai sitten http://fi.php.net/manual/fi/function.addslashes.php tai http://fi.php.net/manual/fi/function.mysql-real-escape-string.php jotka ovat parempia jo tietoturvankannaltakin kun tässä on kyseessä tietokanta.