Weergegeven resultaten: 1 t/m 3 van 3
  1. #1
    Approved 9-lifer Sprits's schermafbeelding
    Lid sinds
    24/09/04
    Locatie
    Mechelen
    Berichten
    2.350
    iTrader
    65 (100%)

    PHP: upload probleem

    ik heb een pagina waarbij ik products toevoeg aan een database. als ik een product toevoeg, kan ik daar ook een logo voor uploaden.
    products worde in database gezet en het logo wordt perfect geupload

    nu moet ik deze products ook af en toe kunnen wijzigen.
    het kan zelfs zijn da er een compleet nieuw logo moet worden geupload.

    het probleem is niet dat het logo niet wordt geupload maar eerder dat de $_FILES['userfile'] ni werkt. dus hij krijgt het in product-edit3.php ni aan.

    mijn form
    PHP-code:
    <form action="?q=product-edit3" method="post">
    <?php
    $sql 
    "SELECT * FROM products WHERE pID='$pID'";
    $result mysql_query($sql);  
    while (
    $record mysql_fetch_object($result)) { 

    $name htmlentities($record->name);
    $sdesc htmlentities($record->sdesc);
    $ldesc htmlentities($record->ldesc);
    $logo $record->logo;
    ?>


    <input type="hidden" name="pID" value="<?php echo "$record->pID";?>" />

    <b>productnaam:</b> <br/>  
    <input type="text" name="pname" size="50" maxlength="255" value="<?php echo "$name";?>" />
    <p></p>

    <b>kleine omschrijving:</b><br/>

    <textarea id="psdesc" name="psdesc" rows="5" cols="80" onfocus="getTarget('psdesc')" onselect="storeCursor(this)" onkeyup="storeCursor(this)" onclick="storeCursor(this)"><?php echo "$sdesc";?></textarea>
    <p></p>

    <b>omschrijving:</b><br/>

    <textarea id="pldesc" name="pldesc" rows="20" cols="80" onfocus="getTarget('pldesc')" onselect="storeCursor(this)" onkeyup="storeCursor(this)" onclick="storeCursor(this)"><?php echo "$ldesc";?></textarea>
    <p></p>

    <?php

    if ($logo) {
        echo 
    "<b>huidig logo</b><br />
        <img src=\"" 
    $uploadrel $logo "\" border=\"1\" />
        <p></p>"
    ;
    }
    ?>
    <b>logo uploaden</b><br /><div style="font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 9px; color: #666666;">alleen .gif, .jpg en .png toegelaten<br />
    bestand mag niet groter zijn dan 300kb</div><br />

    <input type="file" name="userfile" size="50" />
    <p></p>

    <input type="submit" name="submit" value="product bewerken!" />
    </form>
    mijn upload pagina
    PHP-code:
    <h3>product bewerkt</h3>
    <?php
    ob_start
    ();
    session_start();
    if (isset(
    $_SESSION['user_id']))


    function 
    slash($input) {
        if (
    get_magic_quotes_gpc()) {
            return 
    $input;
        } else {
            return 
    addslashes($input);
        }  
    }

    $max_size 307200;
    if (isset(
    $_FILES['userfile'])) {

                    
    $query mysql_query("SELECT * FROM products WHERE pID='$pID'");
                    while(
    $row mysql_fetch_array$query ))    {
                        if (
    $row["logo"]) {
                            
    $delete $row["logo"];
                        }
                    }
                    
    unlink($uploadpath $delete);

        if (
    is_uploaded_file($_FILES['userfile']['tmp_name'])) {
        
            if (
    $_FILES['userfile']['size']>$max_size) { 
                echo 
    "het bestand is te groot<br>\n"
                exit; 
            }
            
                if ((
    $_FILES['userfile']['type']=="image/gif") || ($_FILES['userfile']['type']=="image/pjpeg") || ($_FILES['userfile']['type']=="image/jpeg") || ($_FILES['userfile']['type']=="image/png")) {
        
                    if (
    $_FILES['userfile']['type']=="image/gif") {
                        
    $ext "gif";
                    }
                    elseif (
    $_FILES['userfile']['type']=="image/pjpeg") {
                        
    $ext "jpg";
                    }
                    elseif (
    $_FILES['userfile']['type']=="image/jpeg") {
                        
    $ext "jpeg";
                    }
                    elseif (
    $_FILES['userfile']['type']=="image/png") {
                        
    $ext "png";
                    }
                    else {
                        echo 
    "verkeerd bestandstype<br>\n"
                        exit;
                    }
                
                
    $pname slash($pname);
                
    $plogo preg_replace("/[^a-zA-Z0-9s]/"""$pname);
                
    $upload $plogo '-logo.' $ext;
                
    $res copy($_FILES['userfile']['tmp_name'], $uploadpath $upload);
                if (!
    $res) { 
                    echo 
    "upload mislukt!<br>\n"
                    exit; 
                } 
                else { 
                    echo 
    "upload gelukt<br>\n"
                }
            } 
            else { 
                echo 
    "verkeerd bestandstype<br>\n"
                exit; 
            }
        }
    }

    $pname slash($pname);
    $psdesc slash($psdesc);
    $pldesc slash($pldesc);
    $upload slash($upload);
    mysql_query ("UPDATE products SET name='$pname', sdesc='$psdesc', ldesc='$pldesc', logo='$upload' WHERE pID='$pID'");
    ?> 

    product <b><? echo "$pname";?></b> is bewerkt.<p></p>


    <p>&nbsp;</p>


    <?php
    } else {
    echo 
    "Niet ingelogd
    klik <a href=\"?q=login\"> om door te gaan</a>"
    ;
    }
    ob_end_flush();
    ?>
    dit is ook ongeveer (mits het uit de database halen stuff) hetzelfde als mijn gewoon upload form bij products-add.php en deze werkt wel perfect... ik zie echt de fout ni...

    ik heb al geprobeert om is een extra tekstveld toe te voege en die te late ophale in products-edit3.php en da werkt wel.

    gelieve geen commentaar te geven op de rest van de code die mss crap lijkt, maar dit is pure test code.

    ,,,,
    8(o o)8
    ----ooO-----Ooo--
    PSN: spritske_be

  2. #2
    Member frenzal's schermafbeelding
    Lid sinds
    20/12/02
    Locatie
    Antwerpen
    Berichten
    1.343
    iTrader
    8 (100%)
    heel vluchtig bekeken en misschien is probleem dat uw formtag niet zo is:
    <forml ... method="post" enctype="multipart/form-data">

  3. #3
    Approved 9-lifer Sprits's schermafbeelding
    Lid sinds
    24/09/04
    Locatie
    Mechelen
    Berichten
    2.350
    iTrader
    65 (100%)
    Citaat Oorspronkelijk geplaatst door frenzal Bekijk bericht
    heel vluchtig bekeken en misschien is probleem dat uw formtag niet zo is:
    <forml ... method="post" enctype="multipart/form-data">
    vreed vriendelijk bedankt

    in mijn products-add.php staat het er wel in en er gewoon los over gekeken...

    ,,,,
    8(o o)8
    ----ooO-----Ooo--
    PSN: spritske_be

Discussie informatie

Users Browsing this Thread

Op dit moment bekijken 1 gebruikers deze discussie. (0 leden en 1 gasten)

Regels voor berichten

  • Je mag geen nieuwe discussies starten
  • Je mag niet reageren op berichten
  • Je mag geen bijlagen versturen
  • Je mag niet je berichten bewerken
  •