elin miten sais jonkun tiedoston vaikka tietoa.doc lisättyä tietokantaan php:lla?
Näppärä tapa olisi tallentaa tietokantaan vain tiedoston tietoja ja sijainti sekä samaan aikaan siirtää itse tiedosto palvelimelle. Jos välttämättä haluat säilyttää tiedostoja tietokannassa niin voit turvautua vaikka tähän oppaaseen (itse en tiedä ko. menetelmästä mittään): http://www.php-mysql-tutorial.com/php-mysql-upload.php
kiitoksia oikein paljon! tuollahan oli ihan kädestä pitäen opetus kuinka tallettaa tiedosto tietokantaan!!
Hyvä jos on hyödyksi. Kuten sanottu, itse en ole tuota ikinä kokeillut joten paha mennä sanomaan onko siinä suurempia haittapuolia tuohon erilliseen kansioon tallentamiseen nähden. Itsepähän saat sitten ensikäden tietoa toimivuudesta :)
Tietokantojen palautus voi olla melko hidasta puuhaa, samoin siitä varmuuskopion ottaminen, joskin kaikki data on tallennettuna yhteen paikkaan.
noniin tein myt näin tuon haku koodin tietokannasta
<?php $yhteys = mysql_connect("localhost","","") or die ("yhteys ei onnistu, yritä myöhemmin uudelleen!"); $kysely=mysql_query("CREATE DATABASE IF NOT EXISTS asd ") or die ("tietokantaa ei pystytä tekemään"); mysql_select_db('asd') or die ("tietokantaa ei pystytä valitsemaan"); echo"<form method='post' enctype='multipart/form-data' action='download1.php'>"; $query = "SELECT id, name FROM upload"; $result = mysql_query($query) or die('Error, query failed'); if(mysql_num_rows($result) == 0) { echo "Database is empty <br>"; } else { echo"<select name='id'>"; echo"<option value='0'>valitse tiedosto</option>"; while($row = mysql_fetch_assoc($result)){ //$id=mysql_result($result,$i,"id"); echo"<option value='".$row['id']."'>".$row['name']."</option>"; /*echo"<option value='2'>".$row['name']."</option>"; echo"<option value='3'>".$row['name']."</option>";*/ }echo"</select>"; //echo "<a href='download1.php? id = $id' > $name; </a> <br>"; echo"<input type='text' name='id' value='$id'>"; //$id=2; echo"<input name='upload' type='submit' class='box' id='upload' value=' Upload '>"; } /*if(isset($_POST['id'])) { $id=$_POST['id']; }*/ ?>
ja sitten koodi jolla aukeaisi tiedosto mut ei oikein pelitä...
<?php $id=$_POST['id']; $yhteys = mysql_connect("localhost","","") or die ("yhteys ei onnistu, yritä myöhemmin uudelleen!"); mysql_select_db('asd') or die ("tietokantaa ei pystytä valitsemaan"); //$id=3; $query = "SELECT name, type, size, content FROM upload WHERE id='$id'"; $result = mysql_query($query) or die('Error, query failed'); //list($name, $type, $size, $content) = //mysql_fetch_array($result); for($i=1;$i<=mysql_fetch_assoc($result);$i++) { $name=mysql_result($result,$i,"name"); $type=mysql_result($result,$i,"type"); $size=mysql_result($result,$i,"size"); $content=mysql_result($result,$i,"content"); header("Content-length: $size"); header("Content-type: $type"); header("Content-Disposition: attachment; filename = $name"); echo $content;} ?>
eli näin se toimii ainaki jos on vaa yksi tiedosto tietokannassa...
<?php $query = "SELECT id, name FROM upload"; $result = mysql_query($query) or die('Error, query failed'); if(mysql_num_rows($result) == 0) { echo "Database is empty <br>"; } else //{ /*echo"<select name='id'>"; echo"<option value='0'>valitse tiedosto</option>"; while($row = mysql_fetch_assoc($result)){ //$id=mysql_result($result,$i,"id"); echo"<option value='".$row['id']."'>".$row['name']."</option>"; /*echo"<option value='2'>".$row['name']."</option>"; echo"<option value='3'>".$row['name']."</option>";*/ while(list($id, $name) = mysql_fetch_array($result)) //}echo"</select>"; //echo"<input type='text' name='id' value='$id'>"; //$id=2; //echo"<input name='upload' type='submit' class='box' id='upload' value=' Upload '>"; //} echo "<a href='download1.php? id = $id' > $name; </a> <br>"; ?>
download1.php sivu
<?php $query = "SELECT name, type, size, content FROM upload "; $result = mysql_query($query) or die('Error, query failed'); //list($name, $type, $size, $content) = //mysql_fetch_array($result); for($i=0;$i<=mysql_fetch_assoc($result);$i++) { $name=mysql_result($result,$i,"name"); $type=mysql_result($result,$i,"type"); $size=mysql_result($result,$i,"size"); $content=mysql_result($result,$i,"content"); header("Content-length: $size"); header("Content-type: $type"); header("Content-Disposition: attachment; filename = $name"); echo $content;} ?>
mitenhän tän sais toimimaan samalla sivulla?
Aihe on jo aika vanha, joten et voi enää vastata siihen.