Avatar billede eDesigner Nybegynder
02. maj 2011 - 16:49 Der er 2 kommentarer og
1 løsning

Problem med at sætte en række records til forskellige værdier

Hej Eksperter!

Jeg har forsøgt at lave et script hvor jeg kan bestemme hvilket billede der skal være thumbnail til f.eks en artikel.

Når jeg trykker "sæt som thumbnail" er det kun det sidst uploaded billede(den med højeste ID i DB'en) der kan sættes som thumbnail. Resten forbliver non-thumbnail.

dvs. at billede skal have 1 for at være thumbnail og 0 for ikke at være.

min kode ser således ud(den som opdatere tabellen i databasen):

<?php
//Sæt som thumbnail
if(!empty($_GET['thumb'])){
   
    $sql = "SELECT * FROM s_billeder WHERE skole_id=".$skole_id."";
    $sqlQuery = mysqli_query($connect, $sql) or die (mysqli_error($connect));
    while($raekke = mysqli_fetch_array($sqlQuery)) {
       
        $thumb = 1;
        $nonthumb = 0;
       
//hvis ID'et det samme som der er trykket på
        if($raekke['id'] == $_GET['thumb']){
           
            $minQuery = "UPDATE s_billeder SET thumb=".$thumb." WHERE id='".$_GET['thumb']."'";
            mysqli_query($connect, $minQuery) or die (mysqli_error($connect));
           
        }else{
           
            $minQuery = "UPDATE s_billeder SET thumb=".$nonthumb." WHERE skole_id='".$skole_id."'";
            mysqli_query($connect, $minQuery) or die (mysqli_error($connect));
           
        }
       
    }
       
    //lukker forbindelsen
    mysqli_close($connect);
}
?>

Jeg kan ikke selv se nogle fejl. og jeg får heller ikke nogle når scriptet bliver eksekveret.
02. maj 2011 - 17:28 #1
Du har, ser det ud til, i tabellen s_billeder blandt andet felterne id, skole_id, og thumb.  id identificerer unikt et billede, en raekke i tabellen, hvorimod adskillige raekker kan have det samme skole_id.  Du vil saa for hver skole_id vaelge en id og saette thumb = 1 og for resten af id'erne for skole_id'en skal thumb vaere = 0.  Er det korrekt?

I saa fald skal dine updates referere til $raekke['id'] saaledes:

if($raekke['id'] == $_GET['thumb'])
{
    $minQuery = "UPDATE s_billeder SET thumb=".$thumb." WHERE id='".$raekke['id']."'";
    mysqli_query($connect, $minQuery) or die (mysqli_error($connect));
}
else
{
    $minQuery = "UPDATE s_billeder SET thumb=".$nonthumb." WHERE id='".$raekke['id']."'";
    mysqli_query($connect, $minQuery) or die (mysqli_error($connect));

Proev om det virker bedre.
Avatar billede eDesigner Nybegynder
02. maj 2011 - 18:24 #2
Mange tak Cristian!

Det er selvfølgelig sådan det skal være, det er jo logisk ;)

Må have set mig blid på det..


Smider du et svar så får du lige nogle point :)
02. maj 2011 - 19:08 #3
Svar fra mig.
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