Kirjautuminen

Haku

Tehtävät

Keskustelu: Nettisivujen teko: Kuvien siirto palvelimelle (Upload)

jarspa [03.07.2005 15:42:20]

#

Mikä mättää tässä koodissa? Teen vieraskirjaa jossa voi liittää kuvia viestien mukaan. Ongelma on vaan siinä että tiedoston siirto ei toimi. Chmodaus tapahtuu sivun alussa eli se puoli pitäisi olla kunnossa...

<?php
$yhteys=mysql_connect("localhost","","") or die("Tietokantayhteyttä ei voitu avata");
mysql_select_db("vieraskirja") or die ("Tietokantaa ei voitu avata");

chmod("E:\kuvat", 777);
?>
<form name="form1" method="post" action="">

  <table width="468" border="0" cellpadding="5">
    <tr>
      <td width="442">Kirjoittaja:
        <?php
$mysql_haku = mysql_query("SELECT tunnus FROM kayttajat ORDER BY tunnus");

print "<select name='kirjoittaja' id='kirjoittaja'>";
          while($mysql_tiedot = mysql_fetch_array($mysql_haku)){
            print "<option value=".$mysql_tiedot["tunnus"].">".$mysql_tiedot["tunnus"]."</option>";
          }
print "</select>";
?>
      </td>
    </tr>
    <tr>
      <td><textarea name="kommentti" cols="50" rows="10" wrap="VIRTUAL" id="kommentti">Kirjoita tähän...</textarea></td>
    </tr>
    <tr>
      <td><p>Valitse tallennettava tiedosto:<br>
          <input type=file name="tiedosto">
        </p>
        <p>Kuva teksti<br>
          <input name="kuvateksti" type="text" id="kuvaus2" size="50">
        </p></td>
    </tr>
    <tr>
      <td><input name="send" type="submit" id="send2" value="L&auml;het&auml; kommentit">
        <input type="reset" name="Submit2" value="Tyhjenn&auml;">

<?php
$pvm = date("d.m.y H:i:s");


if (isset($_POST['send']))
{
mysql_query("INSERT INTO kirja (tunnus,kommentit,pvm,kuvaus,kuvanosoite) VALUES ('$kirjoittaja','$kommentti','$pvm','$kuvateksti','$kuvanosoite')");


if(is_uploaded_file($_FILES['tiedosto']['tmp_name']))
    {
        $nimi = ".E:\\kuvat\\".$_FILES['tiedosto']['name'];
        move_uploaded_file($_FILES['tiedosto']['tmp_name'], $nimi);
        echo "Tiedosto ".$_FILES['tiedosto']['tmp_name']." on kopioitu hakemistoon ".$nimi."\n";
    }
    else
    {
        echo "Vituralleen meni, tiedoston nimi oli: " . $_FILES['tiedosto']['name'];
    }

}
?>
      </td>
    </tr>
  </table>
  </form>
<?php
$kysely=mysql_query ("SELECT id,tunnus,kommentit,pvm FROM kirja ORDER BY id DESC");

$lkm=mysql_num_rows($kysely);
print "<b>Vieraskirjassa on $lkm viestiä </b><br><br>";
/* Tulostetaan talukko */

//käydään leffat läpi
		for ($i = 0; $i < mysql_num_rows($kysely); $i++)
		{
   		//haetaan leffan nimi, kategoria ja cd-määrä muuttujiin
   		$kir = mysql_result($kysely, $i, "tunnus");
   		$kom = mysql_result($kysely, $i, "kommentit");
   		$paeva = mysql_result($kysely, $i, "pvm");

		echo "<table cellpadding=\"5\">";
		echo 	"<tr>
					<td width='500' bgcolor=\"#CCCCCC\"><b><font color=blue>$kir</font></b><font size=\"-1\">  [$paeva]</font></td>
					<tr><td width='500'>$kom</td></tr>
				</tr>";

		echo "</table>";
		}
?>

Turatzuro [03.07.2005 16:10:37]

#

Huomaa ettei windowsilla voi käyttää chmod-komentoa. Windows yrittää itse antaa tiedostoille tarvittavat oikeudet.

jarspa [03.07.2005 16:15:07]

#

Ahaas! Mistä mä tiedän sitten että onko toi vika kansion oikeuksissa vai missä...?

wwwapu [03.07.2005 18:33:40]

#

jarspa kirjoitti:

Ongelma on vaan siinä että tiedoston siirto ei toimi

Mittää en mistää tiedä, mutta formilla voisi olla

<form action="jokin.php" method="post" enctype="multipart/form-data">

Näin olen oppinut file kenttiä sisältävän formin aloittamaan.

Juice [03.07.2005 18:34:21]

#

PHP antaa ilmoituksen siitä, mikä on vikana :D

folio [04.07.2005 10:01:24]

#

>> $nimi = ".E:\\kuvat\\".$_FILES['tiedosto']['name'];

Miksi tuon polun alussa on piste?

jarspa [04.07.2005 22:39:25]

#

öö jaa a

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta