Avatar billede stengaard Praktikant
17. marts 2006 - 16:55 Der er 11 kommentarer og
1 løsning

hvordan for jeg udbygget dette script

hej eksperter

hvordan for jeg udbygget dette script så jeg kan få en mulighed for at upload et billed af en ret hvor billedet ligger i en mappe of stien bliver skrevet i mysql, er ved at lave et opskrift system

*******************************  min table ser således ud

CREATE TABLE `recipe` (
  `recipeID` int(11) NOT NULL auto_increment,
  `recipe_title` varchar(200) NOT NULL default '',
  `recipe_ingredients` text NOT NULL,
  `recipe_portioner` text NOT NULL,
  `recipe_images` text NOT NULL,
  `recipe_method` text NOT NULL,
  `recipe_note` text NOT NULL,
  `catID` int(11) NOT NULL default '0',
  PRIMARY KEY  (`recipeID`)
) TYPE=MyISAM AUTO_INCREMENT=125 ;

******************************* mit script der viser retten

  <?php
    include ('useall.php');
   

    if (!isset($catID))
        $catID = "";
   
    if (!isset($recID))
        $recID = "";
   
    if (!isset($act))
        $act = "";
   
    if ($act == "save" && !empty($recID))
    {
        $title = htmlspecialchars ($title);
        $ingredients = htmlspecialchars ($ingredients);
        $method = htmlspecialchars ($method);
        $note = htmlspecialchars ($note);
        $q = "UPDATE recipe SET catID = '$catID', recipe_title = '$title', recipe_ingredients = '$ingredients', recipe_method = '$method', recipe_note = '$note' WHERE recipeID = '$recID'";
        mysql_query ($q);   
    }
   
    echo "<table width=50% align=center class=h4>\n";
   
    $cat_title = "";
    $q = "SELECT cat_title FROM catrecipe WHERE catID = '$catID'";
    mysql_first_data ($q, "cat_title");
   
    echo "<tr><td colspan=2 class=h3><b><a href='index.php'>Opskrift Kategori</a> &gt;&gt; <a href='cat_view.php?catID=$catID'>$cat_title</a></b></td></tr>\n";
   
    $recipe_title = "";
    $recipe_ingredients  = "";
    $recipe_method = "";
    $recipe_note = "";
    $q = "SELECT * FROM recipe WHERE catID = '$catID' AND recipeID = '$recID'";
    mysql_first_data ($q, "recipe_title|recipe_ingredients|recipe_method|recipe_note");
   
    echo "<tr><td colspan=2 class=h2><br><b>$image</b></td></tr>\n";
    echo "<tr><td colspan=2 class=h2><br><b>$recipe_title</b></td></tr>\n";
    echo "<tr><td colspan=2 class=h4_brown><br><b>Ingredienser</b></td></tr>\n";
    echo "<tr><td colspan=2 class=h4>". nl2br($recipe_ingredients) ."</td></tr>\n";
    echo "<tr><td colspan=2 class=h4_brown><br><b>Fremgangsmåde</b></td></tr>\n";
    echo "<tr><td colspan=2 class=h4>". nl2br($recipe_method) ."</td></tr>\n";
   
   
    if (!empty($recipe_note))
    {
        echo "<tr><td colspan=2 class=h4_brown><br><b>Noter</b></td></tr>\n";
        echo "<tr><td colspan=2 class=h4>". nl2br($recipe_note) ."</td></tr>\n";
    }
   
   
    $txt = "<script  type='text/javascript' language='javascript'>\n";
    $txt .=  "function pop(url, nama)\n {";
   
    $txt .= "window.open(url, nama, 'toolbars=no,scrollbars=yes,location=no,directories=no,status=no,menubar=yes,top=10,left=10,width=560,height=450');";
   

    $txt .= "}\n</script>\n";
   
    $txt .= "<a href=\"make_indeks.php?recID=$recID&size=4x6\" target=_blank><img border=0 src='images/4x6.gif' align=center alt='Adobe Reader 4x6'></a>&nbsp;\n";
    $txt .= "<a href=\"make_indeks.php?recID=$recID&size=5x8\" target=_blank><img border=0 src='images/5x8.gif' align=center alt='Adobe Reader 5x8'></a>&nbsp;\n";
    $txt .= "<a href=\"java script:pop('printer_friendly.php?recID=$recID', 'printer');\"><img border=0 src='images/print.jpg' align=center alt='Printer venlig udskrift'></a>&nbsp;\n";
    $txt .= "<a href='rec_edit.php?catID=$catID&recID=$recID'><img border=0 src='images/edit.jpg' align=center alt='Rediger denne Opskrift'></a>&nbsp;\n";
   
    echo "<tr><td colspan=2><br>$txt</td></tr>\n";
    echo "</table>\n";
    echo "<form method=post>\n";
    echo "<table width=100% align=center class=h4 bgcolor=#F2F2F2>\n";
    echo "<tr><td height=30 align=center><a href='add_new.php?catID=$catID'>Lav Ny opskrift i denne Katagori</a></td></tr>\n";
    echo "</table>\n";
    echo "</form>\n";
   

?>           

og det ville jeg gerne have indsat et billed som tidligere er blevet oprettet sammen med retten eller er blevet opdateret senere

delen der skal bygges ind er mit eks. her

<?php
 
$qry = "SELECT * FROM recipe WHERE catID = '$catID' AND recipeID = '$recID'";
  $query = mysql_query($qry) or die(mysql_error());

  while ($row = mysql_fetch_assoc($query)) {

  echo empty($row['image']) ? '' : '<img src=files/'.$row['image'].' class="image">';
 

}
?>

******************************* opskrift oprettelse script

            <?php
    include ('useall.php');
   

    if (!isset($catID))
        $catID = "";
       
    echo "<table width=50% align=center class=h4>\n";
   
    $cat_title = "";
    $q = "SELECT cat_title FROM catrecipe WHERE catID = '$catID'";
    mysql_first_data ($q, "cat_title");
   
    echo "<tr><td colspan=3 class=h3><b><a href='index.php'>Opskrift Kategori</a> &gt;&gt; Opret Ny Opskrift</b><br>&nbsp;</td></tr>\n";
   
   
    echo "<form method=post action='cat_view.php'>\n";
    echo "<input type=hidden name=act value=save>\n";
   
    $select_category = "<select name=catID class=textfield>\n";
    $q = "SELECT * FROM catrecipe ORDER BY cat_title ASC";
    $result = mysql_query($q);
    while ($row = mysql_fetch_object($result))
    {
        if ($catID == $row->catID)
            $SELECTED = "SELECTED";
        else
            $SELECTED = "";
       
        $select_category .= "<option value='$row->catID' $SELECTED>$row->cat_title</option>\n";
    }
    $select_category .= "</select>\n";
    echo "<tr><td>Kategori </td><td>:</td><td>$select_category</td></tr>\n";
    echo "<tr><td>Title </td><td>:</td><td><input type=text name=title class=textfield></td></tr>\n";
    echo "<tr valign=top><td>Ingredienser </td><td>:</td><td><textarea name=ingredients cols=40 rows=6></textarea></td></tr>\n";
    echo "<tr valign=top><td>Fremgangsmetode </td><td>:</td><td><textarea name=method cols=40 rows=6></textarea></td></tr>\n";
    echo "<tr valign=top><td>Noter </td><td>:</td><td><textarea name=note cols=40 rows=6></textarea></td></tr>\n";
    echo "<tr valign=top><td> </td><td></td><td><input type=submit value=Save class=button></td></tr>\n";
    echo "</table>";
    echo "</form>\n";
    echo "<form method=post>\n";
    echo "<table width=100% align=center class=h4 bgcolor=#F2F2F2>\n";
    echo "<tr><td height=30 align=center><a href='java script:history.back();'>&lt;&lt; Tilbage</a></td></tr>\n";
    echo "</table>\n";
    echo "</form>\n";
   
   
?>
Avatar billede jakobdo Ekspert
17. marts 2006 - 18:29 #1
Hvad vil du have gemt i databasen?
Bare et billede?
Eller?
Avatar billede stengaard Praktikant
17. marts 2006 - 20:48 #2
ja mulighed for at upload et billed og så udskrive billedet der hører til retten

har dette script der uploader et billed i en mappe og laver det mindre og tilføjer det i mysql hvis det er noget man kan bruge

<?php

session_start();
include("access.php");

function resize( $filename, $newfilename, $maxw, $maxh )
{
    list($width, $height, $filetype, $attr) = getimagesize($filename);
    $srcim = imagecreatefromjpeg( $filename );
    $ow = imagesx( $srcim );
    $oh = imagesy( $srcim );
    $wscale = $maxw / $ow;
    $hscale = $maxh / $oh;
    $scale = ( $hscale < $wscale ? $hscale : $wscale );
    $nw = round( $ow * $scale, 0 );
    $nh = round( $oh * $scale, 0 );
    $dstim = imagecreatetruecolor( $nw, $nh );
    imagecopyresampled( $dstim, $srcim, 0, 0, 0, 0, $nw, $nh, $ow, $oh );
    imagejpeg( $dstim, $newfilename, 85 );
    imagedestroy( $dstim );
    imagedestroy( $srcim );
    return file_exists($newfilename);
}

if($_FILES['file']['size'] > 0)
{
    // check if there was a file uploaded
    if (!is_uploaded_file($_FILES['file']['tmp_name']))
    {
        $error = "Du skal huske at vælge en fil der skal oploades.<br />";
    }
    else
    {
        $ext = strrchr($_FILES['file']['name'], ".");
        $validexts=Array(".gif", ".jpg", ".jpeg", ".bmp", ".GIF", ".JPG", ".JPEG", ".BMP");
        if (!in_array($ext,$validexts))
        {
            $error = "Dit profil billed er af forkert filtype.<br />";
            unlink($_FILES['file']['tmp_name']);
            // if it's there, an okay size and type, copy to server and update the photo value in SQL
        }
        else
        {
            foreach($validexts as $possext)
            {
                unlink("files/".$id.$possext);
            }
            $newname=$id.$ext;
            resize($_FILES['file']['tmp_name'],"files/".$newname,125,190);
            mysql_query("UPDATE login SET image='$newname' WHERE user = '".$id."'") or die (mysql_error());
            $_SESSION['file'] = $newname;
        }
    }
}
else
{
    $error = "Du skal huske at vælge en fil der skal oploades.<br />";
}

if ($error)
{
    echo "<strong>Dit Profil billed kunne ikke ændres fordi ".$error."<br> <a href=\"changephoto.php\">Prøv Igen Klik her</a></strong>.";
}
else
{
    echo "Dit nye profil billed er blevet oploadet.  se din nye profil, <a href=\"redigerprofil.php\">Klik her</a>.";
}
?>
Avatar billede jakobdo Ekspert
17. marts 2006 - 20:50 #3
Det kunne du godt bygge sammen med dit script!
Avatar billede stengaard Praktikant
17. marts 2006 - 20:57 #4
ja men er ikke helt med på hvorledes da mit script der viser retten har prøvet at tilføre f.eks. portioner i

$recipe_title = "";
    $recipe_ingredients  = "";
    $recipe_portioner  = "";
    $recipe_method = "";
    $recipe_note = "";
    $q = "SELECT * FROM recipe WHERE catID = '$catID' AND recipeID = '$recID'";
    mysql_first_data ($q, "recipe_title|recipe_ingredients|recipe_portioner|recipe_method|recipe_note");
 
    echo "<tr><td colspan=2 class=h2><br><b>$image</b></td></tr>\n";
    echo "<tr><td colspan=2 class=h2><br><b>$recipe_title</b></td></tr>\n";
    echo "<tr><td colspan=2 class=h4_brown><br><b>Antal Portioner</b></td></tr>\n";
    echo "<tr><td colspan=2 class=h4>". nl2br($recipe_portioner) ."</td></tr>\n";
    echo "<tr><td colspan=2 class=h4_brown><br><b>Ingredienser</b></td></tr>\n";
    echo "<tr><td colspan=2 class=h4>". nl2br($recipe_ingredients) ."</td></tr>\n";
    echo "<tr><td colspan=2 class=h4_brown><br><b>Fremgangsmåde</b></td></tr>\n";
    echo "<tr><td colspan=2 class=h4>". nl2br($recipe_method) ."</td></tr>\n";

så kommer der ikke noget frem
Avatar billede stengaard Praktikant
17. marts 2006 - 20:57 #5
selv om der f.eks. står 4 i tablen
Avatar billede stengaard Praktikant
17. marts 2006 - 21:04 #6
og hvordan for jeg så dette her ind

<?php

$qry = "SELECT * FROM recipe WHERE catID = '$catID' AND recipeID = '$recID'";
  $query = mysql_query($qry) or die(mysql_error());

  while ($row = mysql_fetch_assoc($query)) {

  echo empty($row['image']) ? '' : '<img src=files/'.$row['image'].' class="image">';


}
?>

i

$recipe_title = "";
    $recipe_ingredients  = "";
    $recipe_portioner  = "";
    $recipe_method = "";
    $recipe_note = "";
    $q = "SELECT * FROM recipe WHERE catID = '$catID' AND recipeID = '$recID'";
    mysql_first_data ($q, "recipe_title|recipe_ingredients|recipe_portioner|recipe_method|recipe_note");

    echo "<tr><td colspan=2 class=h2><br><b>$image</b></td></tr>\n";
    echo "<tr><td colspan=2 class=h2><br><b>$recipe_title</b></td></tr>\n";
    echo "<tr><td colspan=2 class=h4_brown><br><b>Antal Portioner</b></td></tr>\n";
    echo "<tr><td colspan=2 class=h4>". nl2br($recipe_portioner) ."</td></tr>\n";
    echo "<tr><td colspan=2 class=h4_brown><br><b>Ingredienser</b></td></tr>\n";
    echo "<tr><td colspan=2 class=h4>". nl2br($recipe_ingredients) ."</td></tr>\n";
    echo "<tr><td colspan=2 class=h4_brown><br><b>Fremgangsmåde</b></td></tr>\n";
    echo "<tr><td colspan=2 class=h4>". nl2br($recipe_method) ."</td></tr>\n";
Avatar billede stengaard Praktikant
17. marts 2006 - 21:09 #7
hvis jeg laver det sådan her er skærmen kun hvid

          <?php
    include ('useall.php');
   

    if (!isset($catID))
        $catID = "";
   
    if (!isset($recID))
        $recID = "";
   
    if (!isset($act))
        $act = "";
   
    if ($act == "save" && !empty($recID))
    {
        $title = htmlspecialchars ($title);
        $ingredients = htmlspecialchars ($ingredients);
        $portioner = htmlspecialchars ($portioner);
        $method = htmlspecialchars ($method);
        $note = htmlspecialchars ($note);
        $q = "UPDATE recipe SET catID = '$catID', recipe_title = '$title', recipe_ingredients = '$ingredients', recipe_portioner = '$portioner', recipe_method = '$method', recipe_note = '$note' WHERE recipeID = '$recID'";
        mysql_query ($q);   
    }
   
    echo "<table width=50% align=center class=h4>\n";
   
    $cat_title = "";
    $q = "SELECT cat_title FROM catrecipe WHERE catID = '$catID'";
    mysql_first_data ($q, "cat_title");
   
    echo "<tr><td colspan=2 class=h3><b><a href='index.php'>Opskrift Kategori</a> &gt;&gt; <a href='cat_view.php?catID=$catID'>$cat_title</a></b></td></tr>\n";
   
    $recipe_title = "";
    $recipe_portioner = "";
    $recipe_image = "";
    $recipe_ingredients  = "";
    $recipe_method = "";
    $recipe_note = "";
    $q = "SELECT * FROM recipe WHERE catID = '$catID' AND recipeID = '$recID'";
    mysql_first_data ($q, "recipe_title|recipe_ingredients|recipe_portioner|recipe_image|recipe_method|recipe_note");
   
    echo "<tr><td colspan=2 class=h2><br><b>echo empty($row['image']) ? '' : '<img src=files/'.$row['image'].' class="image">';
</b></td></tr>\n";
    echo "<tr><td colspan=2 class=h2><br><b>$recipe_title</b></td></tr>\n";
    echo "<tr><td colspan=2 class=h4_brown><br><b>Antal Portioner</b></td></tr>\n";
    echo "<tr><td colspan=2 class=h4>". nl2br($recipe_portioner) ."</td></tr>\n";
    echo "<tr><td colspan=2 class=h4_brown><br><b>Ingredienser</b></td></tr>\n";
    echo "<tr><td colspan=2 class=h4>". nl2br($recipe_ingredients) ."</td></tr>\n";
    echo "<tr><td colspan=2 class=h4_brown><br><b>Fremgangsmåde</b></td></tr>\n";
    echo "<tr><td colspan=2 class=h4>". nl2br($recipe_method) ."</td></tr>\n";
   
   
    if (!empty($recipe_note))
    {
        echo "<tr><td colspan=2 class=h4_brown><br><b>Noter</b></td></tr>\n";
        echo "<tr><td colspan=2 class=h4>". nl2br($recipe_note) ."</td></tr>\n";
    }
   
   
    $txt = "<script  type='text/javascript' language='javascript'>\n";
    $txt .=  "function pop(url, nama)\n {";
   
    $txt .= "window.open(url, nama, 'toolbars=no,scrollbars=yes,location=no,directories=no,status=no,menubar=yes,top=10,left=10,width=560,height=450');";
   

    $txt .= "}\n</script>\n";
   
    $txt .= "<a href=\"make_indeks.php?recID=$recID&size=4x6\" target=_blank><img border=0 src='images/4x6.gif' align=center alt='Adobe Reader 4x6'></a>&nbsp;\n";
    $txt .= "<a href=\"make_indeks.php?recID=$recID&size=5x8\" target=_blank><img border=0 src='images/5x8.gif' align=center alt='Adobe Reader 5x8'></a>&nbsp;\n";
    $txt .= "<a href=\"java script:pop('printer_friendly.php?recID=$recID', 'printer');\"><img border=0 src='images/print.jpg' align=center alt='Printer venlig udskrift'></a>&nbsp;\n";
    $txt .= "<a href='rec_edit.php?catID=$catID&recID=$recID'><img border=0 src='images/edit.jpg' align=center alt='Rediger denne Opskrift'></a>&nbsp;\n";
   
    echo "<tr><td colspan=2><br>$txt</td></tr>\n";
    echo "</table>\n";
    echo "<form method=post>\n";
    echo "<table width=100% align=center class=h4 bgcolor=#F2F2F2>\n";
    echo "<tr><td height=30 align=center><a href='add_new.php?catID=$catID'>Lav Ny opskrift i denne Katagori</a></td></tr>\n";
    echo "</table>\n";
    echo "</form>\n";
   

?>
Avatar billede jakobdo Ekspert
17. marts 2006 - 21:19 #8
Kontakt mig ligepå msn: jakobdo (at) hotmail [dot] com
Avatar billede stengaard Praktikant
17. marts 2006 - 22:33 #9
****  vis opskrift script's endelige resultat ****

$recipe_title = "";
    $recipe_portioner = "";
    $recipe_image = "";
    $recipe_ingredients  = "";
    $recipe_method = "";
    $recipe_note = "";
    $q = "SELECT * FROM recipe WHERE catID = '$catID' AND recipeID = '$recID'";
    mysql_first_data ($q, "recipe_title|recipe_ingredients|recipe_portioner|recipe_image|recipe_method|recipe_note");
   
    echo "<tr><td colspan=2 class=h2><br><b>";
    if(!empty($recipe_image))
        echo '<img src="file/'.$recipe_image.'" class="image">';
    echo "</b></td></tr>\n";
    echo "<tr><td colspan=2 class=h2><br><b>$recipe_title</b></td></tr>\n";
    echo "<tr><td colspan=2 class=h4_brown><br><b>Antal Portioner</b></td></tr>\n";
    echo "<tr><td colspan=2 class=h4>". nl2br($recipe_portioner) ."</td></tr>\n";
    echo "<tr><td colspan=2 class=h4_brown><br><b>Ingredienser</b></td></tr>\n";
    echo "<tr><td colspan=2 class=h4>". nl2br($recipe_ingredients) ."</td></tr>\n";
    echo "<tr><td colspan=2 class=h4_brown><br><b>Fremgangsmåde</b></td></tr>\n";
    echo "<tr><td colspan=2 class=h4>". nl2br($recipe_method) ."</td></tr>\n";
   
   
    if (!empty($recipe_note))

**** og opret opskrift script's endelige resultat ****

if ($act == "save" && !empty($catID))
    {
        $allowedExt = array("jpeg","jpg","jpe");
        $title = htmlspecialchars ($title);
        $ingredients = htmlspecialchars ($ingredients);
        $method = htmlspecialchars ($method);
        $note = htmlspecialchars ($note);
        $portioner = htmlspecialchars ($portioner);
        $better_token = "";
       
        //Har vi en fil?
        if($_FILES['billede']['size'] > 0)
        {
            $ext = strtolower(end(explode(".",$_FILES['billede']['name'])));
           
            //Er filen en godkendt type?
            if(in_array($ext,$allowedExt))
            {
                $better_token = md5(uniqid(rand(), true)) . ".jpg";
                echo "<hr>" . getcwd() . "<hr>";
                resize($_FILES['billede']['tmp_name'],"/customers/lkongen.dk/lkongen.dk/httpd.www/opskrift/file/" . $better_token,200,200);
            }
        }
        $q = "INSERT INTO `recipe` (`recipeID`, `recipe_title`, `recipe_portioner`, `recipe_image`, `recipe_ingredients`, `recipe_method`, `recipe_note`, `catID`) VALUES ('', '$title','$portioner','$better_token', '$ingredients', '$method', '$note', '$catID')";
        mysql_query ($q);   
    }
Avatar billede stengaard Praktikant
17. marts 2006 - 22:34 #10
smid lige et svar jakobdo
Avatar billede jakobdo Ekspert
17. marts 2006 - 22:34 #11
Svar!
Avatar billede jakobdo Ekspert
17. marts 2006 - 22:36 #12
Takker for point.
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