PHP Bild hochladen und abspeichern

Hallo Community,

ich will eine Seite (HTML,PHP, MySQLi, CSS - möglichst kein JS) machen, wo man sein Bild hochlädt und es dann gespeichert wird, während der Pfad in der DB landet.

Mein Code bis jetzt:

HTML:

<br /><h3><?php echo $language['reportTitle']; ?></h3>
        <form class="adder" action="saveReport.php" method="POST" enctype="multipart/form-data">
            <input type="hidden" name="ID" value="<?php echo $_SESSION['ID']; ?>" />
            <br /><?php echo $language['reportImage']; ?><label class="upload"><p><?php echo $language['reportUpload']; ?></p><input name="image" type="file" maxlength="1000000" accept="image/*" /></label>
            <br /><br /><?php echo $language['reportDescription']; ?><input name="description" type="text" />
            <br /><br /><b><?php echo $language['reportInfoTitleGeneral']; ?></b><input type="submit" />
        </form>

CSS: (eig. unwichtig)

.upload {
    overflow: hidden;
    position: absolute;
    text-align: center;
    font-size: small;
    color: #708090;
    background-color: #dddddd;
    width: 213px;
    height: 33px;
    left: 500px;
    margin-top: -10px;
    border-width: thin;
    border-color: #C0C0C0;
    border-style: solid;
    border-radius: 3px;
}
.upload:hover {
    border-color: #008B8B;
}
.upload [type="file"] {
    display: block;
    position: absolute;
    font-size: 999px;
    filter: alpha(opacity=0);
    opacity: 0;
    right: 0;
    top: 0;
}
.upload p {
    margin-top: 10px;
}

PHP: (nur ein Ansatz)

<?php
    include('../include/language.inc.php');
    include('../include/testSession.inc.php');
    include('../include/connect.inc.php');
    
    $info[1] = $_POST['ID'];
    $info[2] = $_POST['description'];
    $info[3] = $_FILES['image'];
    $size = sizeof($info);
    for($i = 0; $i < $size; $i++) {
        if(empty($info[$i])) {
            $_SESSION['error'] = $language['addErrorMissingData'];
            header('Location:report.php');
            die($language['addErrorMissingData']);
        }
    }
    $path = "INSERT INTO bugs VALUES (NULL,'".$info[1]."','".$info[2]."','".$info[3]."')";
    $mysqli->query($path);
    imagepng($im, '../include/images/'. $mysqli->insert_id . image_type_to_extension(IMAGETYPE_PNG));
?>

Ich habe schon ein bisschen gegoogelt, aber ich versteh's nicht. Gefunden hab ich:

  • ob_start()
  • POST uploads: http://php.net/manual/en/features.file-upload.post-method.php#features.file-upload.post-method

Am ende sollen (NULL für die ID), die UserID und die Beschreibung in der DB landen. Der Bild-Pfad soll bug['ID'].'.png' sein.

Fragen:

  • Wie nehme ich das Bild entgegen? ($_POST oder $_FILES)
  • Wie wandle ich das Bild in ein PNG-Format um?
  • Wie speicher ich das Bild?
  • Wieso spackt der "Hochladen"-Button so? (Text verschwindet nach anklicken) (Optional)

Danke, schon mal im Voraus!

-Minding

Bilder, HTML, CSS, MySQL, PHP, speichern, Image
Kritischer Fehler: Kernel-Power 41 (63)

Hallo liebe Helfenden.

Ich habe seit einiger Zeit Probleme mit dem obrig genannten Fehler. Am Tag hab ich so um die 2-3 Bluescreens, die unerwartet auftreten. Am Anfang war es lediglich im Ruhezustand, wenn der Rechner mal 20min nicht benutzt wurde, dann öffters beim Herunterfahren (wenn der Desktop schon verschwunden war) und nun tritt es willkürlich auf, manchmal bei Youtube schauen und gerade eben einfach nur im Ordner und Explorer hing sich auf...

Ich habe auch schon im Internet gesucht, dass es öffters mit Treibern, hauptsächlich Realtek auftritt, aber das schließ ich aus, da ich das schon versucht habe.

Das einzigste was ich jetzt hier noch schreiben hinzufügen kann, sind die Details der Ereignisanzeige, womit ich persönlich nicht viel anfangen kann, ich hoffe doch einer von euch :)

  • System
  • Provider

    [ Name] Microsoft-Windows-Kernel-Power

    [ Guid] {331C3B3A-2005-44C2-AC5E-77220C37D6B4}

    EventID 41

    Version 2

    Level 1

    Task 63

    Opcode 0

    Keywords 0x8000000000000002

  • TimeCreated

    [ SystemTime] 2014-11-05T01:44:17.351608500Z

    EventRecordID 13816

    Correlation

  • Execution

    [ ProcessID] 4

    [ ThreadID] 8

    Channel System

    Computer LeberkleisterPC

  • Security

    [ UserID] S-1-5-18

  • EventData

BugcheckCode 127

BugcheckParameter1 0x8

BugcheckParameter2 0x80050033

BugcheckParameter3 0x406f8

BugcheckParameter4 0xfffff80002ecaf24

SleepInProgress false

PowerButtonTimestamp 0

Ich hoffe auf gute Hilfe und danke schon mal im vorraus!

Computer, Windows 7, Bluescreen, 64bit