Avatar billede barzog Nybegynder
22. januar 2007 - 14:24

forkerte værdier i while loop

Hejsa,

jeg sidder her med et while loop som ikke sender den rigtige update_id videre, dermed ryger de værdier som står i den sidste post i while loopet videre til databasen - og det er jo ikke planen, men hvad går der galt?

        $sSQL = " select *" .
                " from table1" .
                " where " .$member->ID ." = user_id ";
        if ($conn->ExecSQL($sSQL)>0) {
            while ($conn->GetNextRow())
            {
                $sResult .= "<br><table cellpadding=\"2\" cellspacing=\"1\" border=\"0\">";
                $sResult .= "<tr valign=\"middle\">";
                $sResult .= "<tr valign=\"middle\">";
                $sResult .= "<td valign=\"top\">Bem&aelig;rkninger:&nbsp;</td>";
                $sResult .= "<td colspan=\"3\"><textarea name=\"bemaerk\" class=\"textfield\" rows=\"5\" cols=\"55\">".$conn->oRow["bemaerk"]."</textarea></td>";
                $sResult .= "</tr>";           
                $sResult .= "<tr valign=\"middle\">";
                $sResult .= "<td>Billede: (max. 10kb)&nbsp;</td>";
                $sResult .= "<td colspan=\"3\"><input class=\"TextField\" type=\"file\" name=\"billede\" size=\"40\" maxlength=\"100\"></td>";
                $sResult .= "</tr>";
                $sResult .= "<tr valign=\"middle\">";
                $sResult .= "<td>&nbsp;</td>";
                $sResult .= "<td colspan=\"3\">Hvis der ikke v&aelig;lges et nyt billede, bevares det tidligere.</td>";
                $sResult .= "</tr>";
                $sResult .= "<tr valign=\"middle\">";
                $sResult .= "<td valign=\"top\">Tidligere billede&nbsp;</td>";
                    if ($conn->oRow["billede"]!=""){
                $sResult .= "<td colspan=\"3\"><img src=\"".$conn->oRow["billede"]."\" alt=\"\" style=\"width: 150px;\"></td>";
                }
                $sResult .= "</tr>";                                                                                               
                $sResult .= "<tr valign=\"top\"><td>";
                $sResult .= "<input type=\"text\" name=\"updatedid\" value=\"" . $conn->oRow["update_id"] . "\"></td><td><br>";
                $sResult .= "<input type=\"submit\" class=\"submit\" value=\" Bekr&aelig;ft \">&nbsp;&nbsp;</td><td><br><a href=\"delvok.php?Page=5&action=delete\"><img src=\"/img/slet.gif\" border=\"none\"></a></td></tr>";               
                $sResult .= "</table>";                                               
            }           
            $conn->CloseRS();       
            }
            print ($sResult);

og scriptet til indsæt af data:

    if (isset($HTTP_POST_VARS["bemaerk"])) $iBemaerk="".$HTTP_POST_VARS["bemaerk"]; else $iBemaerk="";   

    if (isset($HTTP_POST_VARS["navn"])) $iNavn="".$HTTP_POST_VARS["navn"]; else $iNavn="";           

if (isset($HTTP_POST_VARS["updatedid"]))
    $iUpdatedid = $HTTP_POST_VARS["updatedid"];
else if (isset($HTTP_GET_VARS["updatedid"]))
    $iUpdatedid = $HTTP_GET_VARS["updatedid"];
else
    $iUpdatedid = "";

//filupload
    $sFilename="";
    $sDestFile = "";
    $sTmp = "billede";
    if (isset($HTTP_POST_FILES[$sTmp])) {
        $oFilename = $HTTP_POST_FILES[$sTmp]["tmp_name"];
        $oFilename_name = "".$HTTP_POST_FILES[$sTmp]["name"];
    }

    if ((isset($oFilename)) && ($oFilename != "none")) {
        $sSQL = " insert into userfiles " .
                " (update_id, form_id, mail, filename) " .
                " values (" . getUpdateID() . ", 5, " .
                " '', '')";
        $conn->ExecSQL($sSQL);
        $conn->CloseRS();

        $iUserfileID=0;
        $sSQL = " select last_insert_id() as tid from userfiles ";
        if (($conn->ExecSQL($sSQL) > 0) && ($conn->GetNextRow())) {
            $iUserfileID=$conn->oRow["tid"];
        }
        $conn->CloseRS();

        $sFiletype = "";
        $iPos = strrpos($oFilename_name, ".");
        if (intval($iPos) > 0) $sFiletype = substr($oFilename_name, $iPos+1);

        if ($sFiletype != "") {
            $sFilename = "frm_" . $iUserfileID . "." . $sFiletype;

            $sSQL = " update userfiles set " .
                    " filename = '" . $sFilename . "' " .
                    " where id = " . $iUserfileID;
            $conn->ExecSQL($sSQL);
            $conn->CloseRS();

            $sDestFile="upl/files/" . substr("".$iUserfileID,-1) . "/" . $sFilename;
            copy($oFilename, $sDestFile);

        }
    }

//skriv værdier i DB
    $sSQL = "update table1 set bemaerk = '".$iBemaerk."', navn = '".$iNavn."'";
    if ($sDestFile != "")
        $sSQL .= ", billede = '".$sPath . $sDestFile."'";   
    $sSQL .= " where update_id = '".$iUpdatedid."'";
    $conn->ExecSQL($sSQL);
    echo $sSQL;   
    }

//slut
håber i kan hjælpe =)
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