Avatar billede tlunde Nybegynder
29. december 2008 - 21:39 Der er 7 kommentarer og
1 løsning

Gemme data fra en while løkke?

Hej,
Jeg har en masse data jeg smider ud gennem en while løkke omsluttet af en form, men kan ikke lige huske hvordan jeg får alt dette data med og så gemmer på en gang?
Avatar billede arne_v Ekspert
29. december 2008 - 21:42 #1
while løkke i MySQL stored procedure eller while løkke i PHP eller ?

gemmer hvad ?
Avatar billede tlunde Nybegynder
29. december 2008 - 21:47 #2
Jeg har en whileløkke i PHP, som skriver en masse data ud med billeder, og data omkring disse billeder. I bunden er der en "gem ændringer" knap, hvor jeg gerne vil have gemt det nye data omkring de billeder jeg har udskrivet via min PHP while løkke.

Forstår du?
Avatar billede tlunde Nybegynder
29. december 2008 - 22:09 #3
Helt konkret, så har jeg dette kode, der viser en række billeder med tilhørende tekst mm.

---------------------------------------
echo"<div class='contentheading'>Rediger billeder</div><br>";
    echo"
    <form action='".$_SERVER['PHP_SELF']."?action=editpictures_sql&album_id=".$_REQUEST['album_id']."' method='post' style='margin:0px;'>
    <table border='0' width='100%'>
    ";
   
    while ($row = mysql_fetch_array($query)) {
        $beskrivelse = stripslashes($row['beskrivelse']);
        $forsiden = stripslashes($row['forsiden']);
       
        echo"
            <tr>
                <td width='75%' valign='top' style='padding:5px;'>
                    <b>Billedtekst:</b><br>
                    <textarea name='beskrivelse' style='width:400px;height:150px;'>$beskrivelse</textarea>
                </td>
                <td width='25%' align='center' style='padding:5px;'>
                    <table border='0' cellspacing='0' cellpadding='0' style='border:1px solid #cccccc;background-color: #f7f7f7;'>
                        <tr>
                            <td style=''><img src='upload/gallery/".$row['folder']."/thumb/".$row['filnavn']."'</td>
                        </tr>
                        <tr>
                            <td>
                                <table border='0' cellspacing='0' cellpadding='1' style='padding: 5px 0px 5px 0px;'>
                                    <tr>
                                        <td><input type='radio' name='albumcover' value='ja'";
                                        if ($forsiden == 'ja') {
                                            echo" checked = 'checked'";
                                        }
                                        echo"></td>
                                        <td style='padding-top:2px;padding-left:5px;'>Dette er albumcoveret</td>
                                    </tr>
                                    <tr>
                                        <td><input type='checkbox' name='sletbillede' value='ja'></td>
                                        <td style='padding-top:2px;padding-left:5px;'>Slet dette billede</td>
                                    </tr>
                                </table>
                            </td>
                        </tr>
                    </table>
                </td>
            </tr>
            <tr>
                <td colspan='2'><hr noshade size='1' width='100%'></td>
            </tr>
        ";
    }
    echo"
    <tr>
        <td colspan='2' style='padding:5px;'><input type='submit' value='Gem ændringer'></td>
    </tr>
    </table>
    </form>
    ";
---------------------------------------

Når jeg så trykker på sumbitknappen, hvordan hiver jeg så alle ændringer over og gemmer det med SQL på de respektive id's?
Avatar billede arne_v Ekspert
29. december 2008 - 22:14 #4
sætter en stor klump kode ind der først tester på om det er en POST request og hvis det er så
laver en UPDATE med de relevante form værdier som så er i $_POST['feltnavn'].
Avatar billede tlunde Nybegynder
29. december 2008 - 22:20 #5
Jeg kan bare ikke lige se hvordan jeg skal lave den UPDATE, når jeg har de forskellige rækker printet ud fra min while løkke? Jeg skal jo et eller andet sted lave en UPDATE for hver gemmengang af WHILI løkken...

Et eksempel på det ville være rart :-)
Avatar billede arne_v Ekspert
29. december 2008 - 22:30 #6
Ah. Det er der problemet ligger.

Jeg kan se 2 mulige løsninger:

1) du laver en form per række med sin egen submit knap - så er det nemt at lave update koden.

2) du skal have et række id ind i felt navnene a la:

  <input ... name='albumcover_$id' ...

og så har du noget komplekst update kode som løber igennem alle rækkerne og finder
de rigtige form felter og laver en update for hver - jeg tror at det bliver komplekst
Avatar billede tlunde Nybegynder
29. december 2008 - 22:36 #7
Jeg ville nu helst gerne have at jeg bare har en update knap i bunden af siden, hvor jeg updater når jeg er helt færdig med at redigere indholdet af alle billeder, i stedet for at skulle update hver gang jeg er færdig med et billede.

Og det vil så sige at jeg skal bruge mulighed nr. 2, og mener du så her at jeg skal have en hidden med ind til hver billede, med billedets id i?

Men hvordan laver jeg den while loop der gennemløber de billeder der er ændringer i? Det er pt. her mit problem ligger..
Avatar billede tlunde Nybegynder
02. januar 2009 - 19:12 #8
Fandt aldrig nogen løsning på dette...
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
Computerworld tilbyder specialiserede kurser i database-management

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