Tällainen hässäkkä menossa:
<?php require "connect.php"; $yhteys = AvaaTietokanta(); $sivunotsikko; $teksti; $sql_lauseke = "UPDATE uutiset_0506 SET id='$id',kuva1_tiedostonimi='$kuva1_tiedostonimi',kuva1_tyyppi='$kuva1_tyyppi',kuvateksti1='$kuvateksti1' WHERE id='$id'"; if (!$kysely = mysql_query($sql_lauseke,$yhteys)) { $sivunotsikko = "Kuvatallennus epäonnistui! "; $teksti = "Virhe: " . mysql_error(); } else { copy($kuva1_tyyppi,"C:\\palvelin\\images\\uutiskuvat\\" . $kuva1_tiedostonimi); $sivunotsikko = "Kuvatallennus onnistui. "; $teksti = "Kuvat tallennettu tietokantaan. Siirry takaisin uutistenhallinnan etusivulle"; } ?> <?php include("top.php"); ?> <table class="teksti" border="0" cellpadding="2" cellspacing="0" width="400"> <tr> <td height="16" valign="middle" align="left"><b><?php print "$sivunotsikko"; ?></b></td> </tr> <tr> <td height="40"align="left"><br> <?php print "$teksti"; ?> </td> </tr> </table> <?php include("bottom.php"); ?>
Eli tolla lisätään kuva jo valmiina tietokannassa olevaan uutiseen. Tuo copy juttu tuossa ei oikein taida toimia kun antaa seuraavaan ilmoituksen:
Warning: copy(ilmoitus.PNG): failed to open stream: No such file or directory in c:\palvelin\sivut\sisallonhallinta\kuvalisatty.php on line 18¨
Miten saan wörkkimään?
Minkäs takia tossa on joka välissä 2 kauttaviivaa:
"C:\\palvelin\\images\\uutiskuvat\\"
Eikös php:ssä tehdä juuri noin. Jos olet käyttänyt lainausmerkkejä " " laitat sisällä olevat merkit näin " \" \\ jne... "
Ja jos käytät heittomerkkejä ' ' laitat näin ' \ " " \ '
Sebu kirjoitti:
Warning: copy(ilmoitus.PNG): failed to open stream: No such file or directory in c:\palvelin\sivut\sisallonhallinta\kuvalisatty.
php on line 18¨
No kuten virheilmoituksesta voit lukea, tuollaista tiedostoa ei ole. Noista sun muuttujanimistä ei oikein ota selkoa, niin tarkistappa, että nuo on oikeinpäin, ts. ensin lähde ja sitten kohde.
Matso kirjoitti:
Minkäs takia tossa on joka välissä 2 kauttaviivaa:
"C:\\palvelin\\images\\uutiskuvat\\"
Koska yksi kauttaviiva toimii eskaippausmerkkinä (vrt. "\n") ja jos haluaa literaalisen kauttaviivan pitää niitä laittaa kaks peräkkäin.
lainaus:
No kuten virheilmoituksesta voit lukea, tuollaista tiedostoa ei ole. Noista sun muuttujanimistä ei oikein ota selkoa, niin tarkistappa, että nuo on oikeinpäin, ts. ensin lähde ja sitten kohde.
Jep kiitos.. homma selvisi. Muuttujissa oli vähän sekaannusta ja lähetyslomakkeen <form> tagista puuttui toi: enctype="multipart/form-data"
Aihe on jo aika vanha, joten et voi enää vastata siihen.