---
title: "Uppladdning! USCH!"
type: "forum-thread"
url: "https://www.webforum.nu/amne/php/137440-uppladdning-usch"
topic: "PHP"
topic_url: "https://www.webforum.nu/amne/php"
author: "crisse6"
published: "2005-11-11T16:21:08.000Z"
updated: "2005-11-13T15:56:53.000Z"
replies: 22
views: 859
page: 1
pages: 2
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/php/137440-uppladdning-usch"
---

# Uppladdning! USCH!

_Sida 1 av 2._

## #1 — crisse6, 2005-11-11T16:21Z

Hej!

Försöker få ihop mitt uppladdningsskript här. Den klagar inte på något. Funkar heller inte online (inte heller där får man felmess). Så misstänker ju starkt att det är något med koden! 
Vore skitnice om någon skulle kunna ta en titt här...

```php
<?
if (isset($_FILES['fildata'])) {
	if (is_uploaded_file($_FILES['fildata']['tmp_name'])) {
		if (empty($_POST['besk']))
			$besk = "Ingen beskrivning!";
		else
			$besk = $_POST['besk'];
		$dbh = @mysql_connect("localhost", "root", "")
			or die("Ingen koppling där du!");
		mysql_select_db("gallery");
		$filnamn = $_FILES['fildata']['name'];
		$filtyp = $_FILES['fildata']['type'];
		$filstorlek = $_FILES['fildata']['size'];
		
		$sql = "Insert into upload (filnamn, filtyp, filstorlek, fildata, besk)";
			$sql .= " Values ('$filnamn', '$filtyp', '$filstorlek', '$fildata', '$besk')";
				mysql_query($sql);
				
				$fil_id = mysql_insert_id();
//Här börjar skalning

	$mapp = "pics/";
	$mapp2 = "pics/thumbs/";
				$storlek = getimagesize($_FILES['fildata']['tmp_name']);
				$nybredd = 90;
				$nyhojd = 90;
				$nybredd2 = 600;
				$nyhojd2 = 600;
				
				if (($storlek[0] - $nybredd) >= ($storlek[1] - $nyhojd)) {
        $bildbredd = $nyhojd;
        $bildhojd = ($nybredd/$storlek[0])*$storlek[1];

    } else {

        $bildhojd = $nyhojd;
        $bildbredd = ($bildhojd/$storlek[1])*$storlek[0]; 
    }

    $bild_kalla = imagecreatefromjpeg($_FILES['fildata']['tmp_name']);
	
    // GD2
    $bild_skapa = imagecreatetruecolor($bildbredd, $bildhojd);
    imagecopyresampled ($bild_skapa, $bild_kalla, 0, 0, 0, 0, $bildbredd, $bildhojd, $storlek[0], $storlek[1]);
	
	imagejpeg ($bild_skapa, $mapp.$_FILES['fildata']['name'], 100);

    imagedestroy ($bild_skapa);

    // skapa stor bild

    if (($storlek[0] - $nybredd2) >= ($storlek[1] - $nyhojd2)) {
        $bildbredd = $nyhojd2;
        $bildhojd = ($nybredd2/$storlek[0])*$storlek[1];

    } else {

        $bildhojd = $nyhojd2;
        $bildbredd = ($bildhojd/$storlek[1])*$storlek[0]; 
    }

    $bild_kalla = imagecreatefromjpeg($_FILES['fildata']['tmp_name']);

    // GD2
    $bild_skapa = imagecreatetruecolor($bildbredd, $bildhojd);
    imagecopyresampled ($bild_skapa, $bild_kalla, 0, 0, 0, 0, $bildbredd, $bildhojd, $storlek[0], $storlek[1]);
	
	imagejpeg ($bild_skapa, $mapp2.$_FILES['fildata']['name'], 100);
    imagedestroy ($bild_skapa);
    
	
//Slut på skalning
				
				move_uploaded_file($_FILES['fildata']['tmp_name'],"pics/".$_FILES['fildata']['name']);
				
				echo "<b>Uppladdning och skalning klart!</b><br>";
				echo mysql_error();
				mysql_close();
			}
		}
?>
<form action="index.php" method="post" enctype="multipart/form-data">
Välj bild att ladda upp:<br>
<input type="file" name="fildata"><br>
Beskrivning av bilden:<br>
<input type="text" name="besk"><br>
<input type="submit" value="Ladda upp!">
</form>
```

HEij HEij  :bire

Permalänk: https://www.webforum.nu/p/137440

## #2 — filipbh, 2005-11-11T16:44Z

Testa att byta ut

```php
<input type="file" name="fildata"><br>
```

mot

```php
<input type="file" name="fildata[]"><br>
```

Permalänk: https://www.webforum.nu/p/1705781

## #3 — crisse6, 2005-11-11T19:02Z

gör ingen skillnad

Permalänk: https://www.webforum.nu/p/1705841

## #4 — Matte, 2005-11-11T20:54Z

Det filiph skrev skulle möjligvis haft någon betydelse om du tänkt dig att lägga upp flera filer samtidigt.
Om du inte har gjort det, ställ tillbaka.

För att försöka skaffa oss lite information om vad som händer, gör följande.

1\. Lägg följande överst på sidan:

```php
<?php

error_reporting(E_ALL);
ini_set("display_errors", "1");
```

2\. Lägg följande precis efter if (isset($\_FILES\['fildata'\])) {:

```php
echo "<pre>";
print_r($_FILES);
echo "</pre>";
```

Vad skrivs nu ut på skärmen om du försöker ladda upp en fil ?

Permalänk: https://www.webforum.nu/p/1705948

## #5 — crisse6, 2005-11-12T12:20Z

Okej okej!

Nu har jag dock gjort en ominstallation av mitt Win XP igår. Men har allt installerat. Men nu har jag inte fått den å upprätta en koppling till MySQL... weird! Ska kolla på det, men hur som helst när jag kör din kodsnutt så får jag ut:

```
Array
(
    [fildata] => Array
        (
            [name] => Solnedgång.jpg
            [type] => image/jpeg
            [tmp_name] => C:\WINDOWS\TEMP\php32.tmp
            [error] => 0
            [size] => 71189
        )

)

Ingen koppling där du!
```

Permalänk: https://www.webforum.nu/p/1706133

## #6 — Matte, 2005-11-12T16:06Z

Det har inget med kopplingen till MySQL att göra det minsta, men det visar åtminstone att din filuppladdning har lyckats.

Permalänk: https://www.webforum.nu/p/1706206

## #7 — crisse6, 2005-11-12T16:22Z

Inte om du kollar i mapparna den ska skriva till! Dom e tomma!

Permalänk: https://www.webforum.nu/p/1706213

## #8 — Matte, 2005-11-12T16:35Z

Har du lagt följande överst i skriptet ?

```php
<?php 

error_reporting(E_ALL); 
ini_set("display_errors", "1");
```

Då ska du antingen få felmeddelande, eller så ska det fungera.

Skrivs överhuvudtaget "Uppladdning och skalning klart!" ut ?

Kör du detta skript i index.php ?

Permalänk: https://www.webforum.nu/p/1706218

## #9 — crisse6, 2005-11-12T16:37Z

Får inga felmess. Och nej, det skrivs inte ut!

Permalänk: https://www.webforum.nu/p/1706219

## #10 — crisse6, 2005-11-12T16:39Z

Har upptäckt att den stannar typ mitt i databasinskrivningen! Testade runt med echo!

Permalänk: https://www.webforum.nu/p/1706220

## #11 — crisse6, 2005-11-12T16:41Z

Där innan databaskopplingen är brytpunkten! Där slutar den alltså att köra vidare...

Permalänk: https://www.webforum.nu/p/1706222

## #12 — Matte, 2005-11-12T16:50Z

I och med att du har en die() på din mysql_connect() så fastnar den där, när det är något fel med mysql-anslutningen.

Antingen är inte MySQL igång, eller så försöker du logga in med felaktiga uppgifter.
Ändra till:

```php
$dbh = @mysql_connect("localhost", "root", "") 
            or die("Ingen koppling där du!<br>".mysql_error());
```

Kanske då kan få ett meddelande som någon kan tyda till vad som är fel.

Permalänk: https://www.webforum.nu/p/1706226

## #13 — crisse6, 2005-11-12T17:02Z

Då fick man det underbara meddelandet:

```
Client does not support authentication protocol requested by server; consider upgrading MySQL client
```

Försöka återställa password eller?

Permalänk: https://www.webforum.nu/p/1706233

## #14 — @nders, 2005-11-12T17:05Z

Verkar så.

<http://dev.mysql.com/doc/refman/5.0/en/old-client.html>

Permalänk: https://www.webforum.nu/p/1706234

## #15 — crisse6, 2005-11-12T17:11Z

Så, nu e MYSQL igång...
får felmess:

```
Notice: Undefined variable: fildata in c:\inetpub\wwwroot\upload\index.php on line 33

Fatal error: Call to undefined function: imagecreatefromjpeg() in c:\inetpub\wwwroot\upload\index.php on line 58
```

Permalänk: https://www.webforum.nu/p/1706235

## #16 — crisse6, 2005-11-12T17:14Z

Okej. Notisen fixade jag ju... den va misstag. 
Men det andra känns som att GD inte är som det ska!!!

Permalänk: https://www.webforum.nu/p/1706237

## #17 — crisse6, 2005-11-12T17:24Z

Okej. Kör den nu på b-one. Asså det är ju något med att jag inte får in GD på min verkar det som!!! Det ingår tydligen inte i de nya php... läste jag? 

Iaf. Den laddar upp bilden, den stora, men skapar ingen liten! Why?

Permalänk: https://www.webforum.nu/p/1706240

## #18 — Matte, 2005-11-12T17:57Z

Därför att du inte har GD-stöd, eller endast mycket begränsat GD-stöd, därav ditt felmeddelande om "undefined function".

Permalänk: https://www.webforum.nu/p/1706249

## #19 — crisse6, 2005-11-12T18:06Z

hur ställer jag in det?

Permalänk: https://www.webforum.nu/p/1706254

## #20 — Matte, 2005-11-12T18:22Z

På b-one kan du inte göra något åt det, har de inte GD-stöd får du leva med det.
Kör du Windows på din testserver, ta en titt här: <http://www.phpportalen.net/viewtopic.php?p=248451#248451>

Permalänk: https://www.webforum.nu/p/1706256

---

Tråden på webben: https://www.webforum.nu/amne/php/137440-uppladdning-usch  
Nästa sida: https://www.webforum.nu/amne/php/137440-uppladdning-usch/page2.md
