Avatar billede rdc Nybegynder
03. februar 2007 - 20:20 Der er 1 løsning

Uploade 4 billeder med tekst til en db

hejsa...

Jeg har søgt her på exp.dk og fået en masse hjælp, men har kun kunne få det til at virke, hvor man kun kan uploade en fil og skrive tekst til den... Nogen der vil hjælpe mig med at skrive nedenstående kode om, sådan at jeg kan oploade 4 billeder af gangen og skrive tekst til det hele som overordnet...

Altså design mæssigt skal det komme til at se sådan her ud:

Billede1
Billede2
Billede3
Billede4
Overskrift
Navn
Tekst



jeg har foreløbig 2 filer og de er:

billeder.php :

<p class=overskrift>Billeder</p>

<p>Her er der så plads til billeder fra de sidste år.!<br>
Hvis du har nogle billeder, du mener, skal op på siden, så <a href="upload.php">upload billederne</a>!!</p>

<table class=billeder border=1>
<?
    $order = "id";
          $database = mysql_connect("xxx","xxx","xxx");
                mysql_select_db("xxx",$database);       
    $sql = "SELECT * FROM billeder";
    $foresp = mysql_query($sql);
    while ($data = mysql_fetch_array($foresp)) {
        $size = getimagesize("billeder/$data[fil].jpg");
        $height = $size[1] + 20;
        $width = $size[0];
        print "<tr> <td valign=bottom> <a href=\"#\" border=\"0\" onclick=\"self.window.open('aaben_billeder.php?fil=$data[fil]','Billeder','left=100,top=100,height=$height,width=$width,resizable=no,status=no,toolbar=no,menubar=no,location=no')\"> <img src=\"billeder/$data[fil].jpg\" width=\"250\" border=\"0\"> </a> <br>\n";
        print "$data[tekst] <br>";
        print "Upladet af: $data[navn]";
        print "</td> </tr>";
    }
?>   
</table>





upload.php :

<?
    // Uploade billeder
    $submit_billede = $_POST['submit_billede'];
    if ($submit_billede) {
        $tempuploaddir = 'billeder/temp/';
        $uploaddir = 'billeder/';
        $uploadfile = $tempuploaddir . $_FILES['filnavn']['name'];

                $database = mysql_connect("xxx","xxx","xxx");
                            mysql_select_db("xxx",$database);     
        $foresp = mysql_query("SELECT fil FROM billeder");
        while ($data = mysql_fetch_array($foresp)) {
            $fil = array($data[fil]);
        }
        $naeste_filnavn = end($fil) + 1;

        if (move_uploaded_file($_FILES['filnavn']['tmp_name'], $uploadfile)) {
            rename($tempuploaddir . $_FILES['filnavn']['name'],$uploaddir . $naeste_filnavn . ".jpg");
                $database = mysql_connect("xxx","xxx","xxx");
                            mysql_select_db("xxx",$database);
            $sql = "INSERT INTO billeder (navn, fil, tekst) VALUES ('$_POST[navn]', $naeste_filnavn, '$_POST[tekst]')";
            mysql_query($sql) or die(mysql_error());
        } else {
          print "Der er sket en fejl!";
        }
    }
?>


<form enctype="multipart/form-data" action="upload.php" method="POST">
<table>
<tr> <td> Upload dette billede: </td> <td> <input name="filnavn" type="file"> </td> </tr>
<tr> <td> Dit navn: </td> <td> <input type="text" name="navn"> </td> </tr>
<tr> <td> Skriv en kommentar til billedet: </td> <td> <input type="text" name="tekst"> </td> </tr>
<tr> <td> Send billedet: </td> <td> <input type="submit" name="submit_billede" value="Send billede"> </td> </tr>
</table>
</form>



og SQL'en:

CREATE TABLE `billeder` (
  `id` int(3) NOT NULL auto_increment,
  `navn` char(40) NOT NULL default '',
  `fil` int(3) NOT NULL default '0',
  `tekst` char(255) NOT NULL default '',
  PRIMARY KEY  (`id`)
) TYPE=MyISAM ;


På forhånd tusind tak for hjælpen
Avatar billede rdc Nybegynder
04. februar 2007 - 13:03 #1
lukker
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester