Avatar billede zorg_86 Nybegynder
18. september 2003 - 18:11 Der er 6 kommentarer og
1 løsning

Har en lille fejl i min upload kode

Hej

Jeg har denne kode til at uploade billeder med:

if (isset($_FILES['upfile'])) {
    $id=intval($_GET['id']);
    $dist = $_SERVER['DOCUMENT_ROOT']."/galleri/scooter_billeder/";
    $resultat = mysql_query("SELECT billede_nr FROM scooter_billede_nr WHERE scooter_id = '$id'") or die (mysql_error());
    $row = mysql_fetch_array($resultat);
    foreach ($_FILES['upfile']['name'] as $name => $value) {
        if ($value) {
            if (!eregi(".jpg$", $value)) {
                echo 'Ugyldig filtype.<br>';
                $pic = 1;
            }
        }
    }
    if ($pic != 1) {
        $i = 0;
        foreach ($_FILES['upfile']['name'] as $name => $value) {
            if ($value) {
                $row['billede_nr']++;
                if (is_uploaded_file($_FILES['upfile']['tmp_name'][$i])) {
                    $temparr = explode(".", $value);
                    $temparr[count($temparr)-2] = $id."_".$row['billede_nr'];
                    $files = implode(".", $temparr);
                   
                    $quality = 90;
                    $big_width = 700;
                    $big_height = 700;
                   
                    $src_img = ImageCreateFromJPEG($_FILES['upfile']['tmp_name'][$i]);
                    $src_width = imagesx($src_img);
                    $src_height = imagesy($src_img);
                    $filinfo = @getimagesize($_FILES['upfile']['tmp_name'][$i]);
                   
                    if ($filinfo[0]>$big_width || $filinfo[1]>$big_height) {
                   
                    if ($src_width<$src_height) {
                    $img[height]    = $big_height;
                    $img[width]    = floor($big_height*$src_width/$src_height);
                    } else {
                    $img[width]    = $big_width;
                    $img[height]    = floor($big_width*$src_height/$src_width);
                    }

                    $nIm = imageCreateTrueColor($img[width],$img[height]);
                    imagecopyresampled($nIm,$src_img,0,0,0,0,$img[width],$img[height],$src_width,$src_height);
                    imageJPEG($nIm,$dist.$files,$quality);
                    imageDestroy($nIm);
                    imagedestroy($src_img); 
                    } else {
                        move_uploaded_file($_FILES['upfile']['tmp_name'][$i], $dist . $files);
                    }
                   
                    $billede_sti = $_SERVER['DOCUMENT_ROOT']."/galleri/scooter_billeder/".$files;
                    mysql_query("INSERT INTO scooter_billeder (scooter_id,URL,filnavn) VALUES ('$id','$billede_sti','$files')") or die (mysql_error()); 
                    if($row['billede_nr'] != 1) {
                        mysql_query("UPDATE scooter_billede_nr SET billede_nr = '$row[billede_nr]' WHERE model_id = $model_id AND scooter_id = $id");
                    } else {
                        mysql_query("INSERT INTO scooter_billede_nr (model_id,scooter_id,billede_nr) VALUES ('$model_id','$id','$row[billede_nr]')");
                    }
                    $_FILES['upfile']['size'][$i] = floor($_FILES['upfile']['size'][$i] / 1024);
                    echo '<font face="Verdana" style="font-size: 11px;"><b>Filnavn:</b> '.$files.' <b>St&oslash;rrelse:</b> '.$_FILES['upfile']['size'][$i].' kb</font><br>';
                } else {
                    echo '<font face="Verdana" style="font-size: 11px;">Upload til serveren skete ikke!</font>';
                }
            }
            $i++;
        }
    }
  }


Det der ikke dur er at den ikke vil opdatere billede_nr, den vil godt oprette en ny men den vil ikke opdatere til det den er noget til...

Nogle der kan hjælpe?
Avatar billede zorg_86 Nybegynder
18. september 2003 - 18:13 #1
Altså der er noget galt her:


                    if($row['billede_nr'] != 1) {
                        mysql_query("UPDATE scooter_billede_nr SET billede_nr = '$row[billede_nr]' WHERE model_id = $model_id AND scooter_id = $id");
                    } else {
                        mysql_query("INSERT INTO scooter_billede_nr (model_id,scooter_id,billede_nr) VALUES ('$model_id','$id','$row[billede_nr]')");
                    }
Avatar billede schaefner Juniormester
18. september 2003 - 18:17 #2
if($row['billede_nr'] != 1) {
                        mysql_query("UPDATE scooter_billede_nr SET billede_nr = '$row[billede_nr]' WHERE model_id = $model_id AND scooter_id = $id") or die(mysql_error());
                    } else {
                        mysql_query("INSERT INTO scooter_billede_nr (model_id,scooter_id,billede_nr) VALUES ('$model_id','$id','$row[billede_nr]')");
                    }
Avatar billede zorg_86 Nybegynder
18. september 2003 - 18:24 #3
You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near 'AND scooter_id = 1' at line 1
Avatar billede zorg_86 Nybegynder
18. september 2003 - 18:33 #4
LoOoL Det er fordi jeg havde glemt at jeg har slette feltet model_id i scooter_billede_nr
Avatar billede schaefner Juniormester
18. september 2003 - 19:00 #5
Derfor er det altid godt at udskrive eventuelle mysql-fejl. Man tror man kan huske sin tabel-opbygning, men alligevel laver man tit fejl :)
Avatar billede zorg_86 Nybegynder
18. september 2003 - 20:01 #6
Behøver du nogle points?
Avatar billede schaefner Juniormester
18. september 2003 - 21:10 #7
tjooh
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