Avatar billede hoejgaard Juniormester
30. juli 2005 - 12:29 Der er 23 kommentarer og
1 løsning

upload af billede

Hej.
Jeg skal uploade et billede via php script og  har følgende :

if (empty($_FILES['upfil']['name'])) {
                    $files= ' ';
                    $_POST[tekst] = ' ';
                  //echo" der er ikke et billede"; exit;
                }

Problemet er at når jeg har indsat et billede i formen, går den alligevel ind i ovenstående if sætning.
Er der noget forkert her  ??
Avatar billede polle007 Nybegynder
30. juli 2005 - 12:32 #1
upfil hedder feltet også det i din form?
Avatar billede hoejgaard Juniormester
30. juli 2005 - 12:34 #2
<TR>
      <TD class="td13" width="25%">Opret billede:</td>
        <td WIDTH="75%">
        <input style="font-size:9px"  STYLE="height: 17px" type="file" name="upfil" style='width:236px'></td>
</tr>
Avatar billede kongfjong Nybegynder
30. juli 2005 - 12:36 #3
Hvordan ser hele din form ud?
Avatar billede polle007 Nybegynder
30. juli 2005 - 12:38 #4
Og du har

enctype="multipart/form-data"

i dit <form> tag ?
Avatar billede hoejgaard Juniormester
30. juli 2005 - 12:39 #5
Den er for lang at bringe her, men det er det eneste felt der ikke bliver uploadet som det skal....
Avatar billede hoejgaard Juniormester
30. juli 2005 - 12:41 #6
ja polle007 det har jeg !
Avatar billede kongfjong Nybegynder
30. juli 2005 - 12:42 #7
Hvad med om du tjekkede på om der overhovedet står noget i feltet, fx

if (empty($_POST['upfil']))

osv:)
Avatar billede hoejgaard Juniormester
30. juli 2005 - 12:46 #8
har lige skrevet
if (empty($_POST['upfil']))  {  echo" der er ikke et billede"; exit; }

og selvom jeg indsætter noget i feltet skriver den at der ikke er et billede !
Avatar billede kongfjong Nybegynder
30. juli 2005 - 12:51 #9
Du har ikke andre felter der ved en fejl hedder det samme vel?
Avatar billede hemberg Forsker
30. juli 2005 - 12:55 #10
Jeg ved ikke meget om php men måske kan flg. hjælpe.

1) I asp skal modtage serveren have et komponent installeret for at kunne modtage en fil (ASPUPLOAD). Er der ikke noget med det i php.

2) Er det noget med at der skal tages stilling om det er binært eller ej ???

Et par tråde som måske kunne hjælpe...
Avatar billede kongfjong Nybegynder
30. juli 2005 - 12:56 #11
Det ville være ti gange nemmere, hvis du smed hele formen, selvom den er lang:)
Avatar billede hoejgaard Juniormester
30. juli 2005 - 12:56 #12
nej det har jeg ikke...
Har lige skiftet webhotel til anden udbyder.. kan det være noget der ??
Avatar billede kongfjong Nybegynder
30. juli 2005 - 12:59 #13
Det ville umiddelbart lyde underligt, men måske.

Har du prøvet at teste det hele lokalt på din maskine først?
Avatar billede polle007 Nybegynder
30. juli 2005 - 13:01 #14
Du kan jo prøve at køre en phpinfo()

og se om file_uploads er sat til on
Avatar billede hoejgaard Juniormester
30. juli 2005 - 13:01 #15
Godt her er formen :

<?
ob_start();
session_start();
$userid = $_SESSION['valid_user'];
?>
<html>
<head>
  <title>KomsiKomsa.dk</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<script type="text/JavaScript" src="dk_pns.js"></script>
<script type="text/javascript">
function fillPn(f) {
  f.p.value = f.p.value.replace(/[^\d]/g,"");
  if(f.p.value.length>0){
    var inx = "p"+f.p.value;
    if (pn[inx]) {
        f.b.value = pn[inx];
    } else {
        f.b.value = "Forkert postnummer";
        f.p.select();
    }
  }else
    f.b.value = "";
}
</script>

  <? require("coolmenuscript.js"); ?>
  <? require("popupbillede.js"); ?>
  <? require("stylesheet.css"); ?>
</head>
  <? if (isset($_SESSION['valid_user'])) { 
        header("Location: ../opret_profil_logud.php");               
        exit;
      } ?>
  <?  if (empty($_SESSION['valid_user'])) { ?>
  <body id="body2" onLoad="populate(); setInterval(startTael,1000)"> <? } ?>
    <?  require("menutop2.php"); ?>
      <center>
          <? include("hovedtabel_3.html"); ?>
            <tr valign="top">
                  <? //include("venstremargen.php"); ?>
                    <td width="84%" >
                       
   
                        <table border="0" cellspacing="0" cellpadding="0" width="100%" >
                          <tr> 
                                <td width="7%" ><br>&nbsp;</td>     
                         
                                <td class="td17"><br><b>Felterne skrevet med rød skrift skal udfyldes!</b></td>
                                <td width="13%" ><br>&nbsp;</td>
                          </tr>
                          <tr> 
                                <td colspan="3" ><br>&nbsp;</td>   
                          </tr>
                        </table> 
                        <table border="0" cellspacing="0" cellpadding="0" width="100%" >   
                          <tr>
                            <td width="14%" >&nbsp;</td>     
                            <td width="67%" >
                              <FORM ACTION="opdatering_tilmelding_final_thumbnail_laverthumbnails.php" METHOD="POST" enctype="multipart/form-data">
                               
                                  <table width="100%">
                                  <tr>
                                    <td WIDTH="100%" colspan="2"><input type="hidden" name="dato1" value="<?php echo time(); ?>"></td>
                                  </tr>




<TR>
      <TD class="td32" width="25%">Bopæl:</B></TD>
      <td WIDTH="75%" ><select name="bopael" style="font-size:9px"  STYLE="height: 17px"  value="<?php echo "$bopael"; ?>" >
                    <option value="<?php echo $bopael; ?>"><?php echo $bopael; ?></option>
                   
                    <option value="københavn"> København</option>
                    <option value=" Århus">Århus</option>
                    <option value="Odense">Odense</option>
                   
                    <option value="Ålborg">Ålborg</option>
                    <option value="Nordjylland">Nordjylland</option>
                    <option value="Midtjylland">Midtjylland</option>
                      <option value="Østjylland">Østjylland</option>
                      <option value="Sønderjylland">Sønderjylland</option>
                      <option value="Vestjylland">Vestjylland</option>
                      <option value="Fyn">Fyn</option>
                      <option value="Vestsjælland">Vestsjælland</option>
                        <option value="Midtsjælland">Midtsjælland</option>
                      <option value="Nordsjælland">Nordsjælland</option>
                      <option value="Sydsjælland">Sydsjælland</option>
                      <option value="Lolland/Falster">Lolland/Falster</option>
                      <option value="Bornholm">Bornholm</option>
                    <option value="Andet">Andet</option>                   
        </select></td> 

   

    </tr>




    <TR>
      <TD class="td13" width="25%">Postnr:</TD>
      <TD WIDTH="75%" >
      <input type="text" style="font-size:9px"  STYLE="height: 17px" name="p" onblur="fillPn(this.form);" SIZE="8" MAXLENGTH="4" ></TD>
    </TR>

      <TR>
      <TD class="td13" width="25%">By: </TD>
      <TD WIDTH="75%" >
      <input type="text" style="font-size:9px"  STYLE="height: 17px" name="b" onfocus="this.blur();" readonly ></TD>
      </TR>   
 

     

      <TR>
      <TD class="td32" width="25%">Email:</b></TD>
        <TD WIDTH="75%" >
        <INPUT NAME="email" TYPE="text" style="font-size:9px" STYLE="width: 173px" STYLE="height: 17px" SIZE="30" MAXLENGTH="50">
</TD>
    </TR>


<?
echo "
<TR>
      <TD class='td13' colspan='2' WIDTH='100%'>Marker i boksen hvis email adresse må ses:
 
  <input type='checkbox'  name='del_me[]' value='$row[id]'></td>
</tr>
";

?>


<TR>
      <TD class="td32" width="25%">Køn:</TD>
       
          <td WIDTH="75%" ><select name="koen" style="font-size:9px"  STYLE="height: 17px" STYLE="width: 40px" value="<?php echo "$koen"; ?>">
                    <option value="<?php echo $koen; ?>"><?php echo $koen; ?></option>
                    <option value="M">M</option>
                    <option value="K">K</option>
                </select></td>
</tr>

    <TR>
      <TD class="td13" width="25%">Højde:</TD>
      <TD WIDTH="75%" class="td13"><INPUT NAME="hoejde" TYPE="text" style="font-size:9px"  STYLE="height: 17px"  SIZE="4" MAXLENGTH="3">&nbsp;cm</TD>
       
    </TR>
<TR>
      <TD class="td32" width="25%">Alder:</TD>
        <TD WIDTH="75%" class="td13"><INPUT NAME="alder" TYPE="text" style="font-size:9px"  STYLE="height: 17px"  SIZE="4" MAXLENGTH="3">&nbsp;år</TD>
       
    </TR>


<TR>
      <TD class="td13" width="25%">Vægt:</TD>
        <TD  class="td13" WIDTH="75%"><INPUT NAME="vaegt" TYPE="text" style="font-size:9px"  STYLE="height: 17px"  SIZE="4" MAXLENGTH="3">&nbsp;kg</TD>
       
    </TR>






<TR>
      <TD class="td13" width="25%">Kropsbygning:</TD>
        <TD WIDTH="75%" ><select name="kropsbygning" STYLE="width: 98px" style="font-size:9px" style="border-color:#4f3728" STYLE="height: 17px" value="<?php echo "$kropsbygning"; ?>">>
                   
                    <option value="Ikke angivet">Ikke angivet</option>
                    <option value="Spinkel">Spinkel</option>
                    <option value="Almindelig">Almindelig</option>
                    <option value="Robust">Robust</option>
                    <option value="Buttet">Buttet</option>
                    <option value="Overvægtig">Overvægtig</option>
                    <option value="Handicappet">Handicappet</option>
                    </select></td>
     
</TD>
    </TR>


<TR>
      <TD class="td13" width="25%">Øjenfarve:</TD>
        <TD WIDTH="75%" ><select name="oejenfarve" STYLE="width: 98px" style="font-size:9px" style="border-color:#4f3728" STYLE="height: 17px" value="<?php echo "$oejenfarve"; ?>">>
                   
                    <option value="Ikke angivet">Ikke angivet</option>
                    <option value="Grønne">Grønne</option>
                    <option value="Blå">Blå</option>
                    <option value="Brune">Brune</option>
                    <option value="Andet">Andet</option>
                   
                    </select></td>
     
</TD>
    </TR>






<TR>
      <TD class="td13" width="25%">Hårfarve:</TD>
        <TD WIDTH="75%" ><select name="haarfarve" STYLE="width: 98px" style="font-size:9px" style="border-color:#4f3728" STYLE="height: 17px" value="<?php echo "$haarfarve"; ?>">>
                     
                    <option value="Ikke angivet">Ikke angivet</option>
                    <option value="Hvidt">Hvidt</option>
                    <option value="Blond">Blond</option>
                    <option value="Mørke blond">Mørke blond</option>
                    <option value="Mørkebrunt">Mørkebrunt</option>
                    <option value="Sort">Sort</option>
                    <option value="Brunt">Brunt</option>
                    <option value="Gråt">Gråt</option>
                    <option value="Rødt">Rødt</option>
                    <option value="Mørkerødt">Mørkerødt</option>
                    <option value="Andet">Andet</option>
                </select></td>
    </TD>
    </TR>




<TR>
      <TD class="td13" width="25%">Opret billede:</td>
        <td WIDTH="75%">
        <input style="font-size:9px"  STYLE="height: 17px" type="file" name="upfil" style='width:236px'></td>
</tr>




<TR>
      <TD class="td13" width="25%">Beskrivelse:</td>
<td WIDTH="75%" ><script type="text/javascript">
function checkLength(navn,max)
{
if (navn.value.length >= max)
{
  navn.value = navn.value.substring(0,max-1);
}
}
</script>

<textarea name="beskriv" onkeydown="checkLength(this,600)" rows="14" cols="43" style="font-size:12px"></textarea>
</td>
</tr>
<tr>
        <td width="25%"></td>
        <td WIDTH="75%" class="td18"><b>Eks. om interesser, arbejde, fritid, max. 600 tegn !<b></td>
</tr>






      <TR>
      <TD class="td32" width="25%">Brugernavn:</TD>
        <TD WIDTH="75%" >
        <INPUT NAME="brugernavn" style="font-size:9px" STYLE="width: 140px" STYLE="height: 17px" TYPE="text" SIZE="30" MAXLENGTH="12">
</TD>
      </TR>
<tr>
        <td BgColor='#ffffff' width="25%"></td>
        <td class="td18" WIDTH="75%"><b>Valgfrit, mellem 1 og 12 tegn !<b></td>
</tr>
      <TR>
      <TD class="td32" width="25%">Kode:</TD>
        <TD WIDTH="75%" >
        <INPUT NAME="pass" style="font-size:9px"  STYLE="height: 17px" TYPE="PASSWORD" SIZE="30" MAXLENGTH="16">
</TD>
</TR>

<tr>
        <td width="25%"></td>
        <td class="td18" WIDTH="75%"><b>Valgfrit, mellem 6 og 16 tegn !<b></td>
</tr>

<TR>
      <TD class="td32" width="25%">Gentag kode:</TD>
        <TD WIDTH="75%" >
        <INPUT NAME="password2" style="font-size:9px"  STYLE="height: 17px" TYPE="PASSWORD" SIZE="30" MAXLENGTH="16">
</TD>     
  </tr>
<tr>
<td></td>
</tr>
<tr>
<td></td>
</tr>
<tr>

<td colspan="2"><center><INPUT NAME="submitform" TYPE="submit" VALUE="Godkend"></center></td>
</tr>
   
</table>
</form>
      </td><td width="6%" >&nbsp;</td><td width="13%" >&nbsp;</td> </tr>



















                           
                      </table>
                     
                  </td> 


                  <? include("hoejremargentest.php"); ?>

            </tr> 
      </table>
    </center>

    <? include("bund.html"); ?>

<script language="javascript1.2" src="menu.js"></script>
</body>
</html>
<?
ob_end_flush();
?>
Avatar billede hoejgaard Juniormester
30. juli 2005 - 13:09 #16
hvordan er det man køre en phpinfo() ????
Avatar billede hoejgaard Juniormester
30. juli 2005 - 13:14 #17
okay har gjort det nu og kan se at
mastervalue =on og localvalue=off ud for fileuploads

Er det godt???
Avatar billede hemberg Forsker
30. juli 2005 - 13:18 #18
Lyder som noget hvor begger værdier skal være on..
Avatar billede hoejgaard Juniormester
30. juli 2005 - 13:24 #19
ja ved det ikke ??
Avatar billede polle007 Nybegynder
30. juli 2005 - 14:16 #20
hvis du ikke har en .htaccess fil i dit bibliotek, så prøv at opret en og tilføj

php_flag file_uploads on
Avatar billede hoejgaard Juniormester
30. juli 2005 - 16:56 #21
udbyder har nu sat den til on..
Men nu prøver jeg at uploade en jpg fil men alligevel er følgende opfyldt :

<? if ( (!empty($_FILES['upfil']['name']) && !preg_match("/\.(gif|jpe?g)$/i",$_FILES['upfil']['name'])) OR (!($str = @getimagesize($_FILES["upfil"]["tmp_name"])) && !empty($_FILES['upfil']['name'])) ) { ?>
                          <tr><td width="7%" ><br>&nbsp;</td><td class="td17"><br><b>Du kan kun uploade jpg eller gif filer !</b></td><td width="13%"><br>&nbsp;</td></tr> <? } ?>
Avatar billede hemberg Forsker
30. juli 2005 - 18:33 #22
Hmmm. Jeg har et par muligheder mere (Det lader til der er lidt held i mig idag).

1) Er der nogen max size på hvad der må uploades, prøv med mindre fil.

2) Kunne din "jpg" fil være en anden typen som blot er "foklædt" som en jpg. Har jeg selv prøvet engang. Prøv igen med en anden
Avatar billede hoejgaard Juniormester
31. juli 2005 - 15:55 #23
Altså jeg har i min form :

<TR>
      <TD class="td13" width="25%">Opret billede:</td>
        <td WIDTH="75%">
        <input style="font-size:9px"  STYLE="height: 17px" type="file" name="upfil" style='width:236px'></td>
</tr>


Men når jeg skriver echo "$_FILES['upfil']['name']"; kommer der ikke noget ??

Virker som om der ikke uploades noget !!
Hvad gør jeg forkert ??
Avatar billede hoejgaard Juniormester
14. februar 2006 - 16:48 #24
lukker
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