<b>REGISTER</b>

GFX-Sector - PHP, MySQL


 
GFX-Sector » Coding Area » Webentwicklung » PHP, MySQL » [PHP] $_FILES[filename] => Kompletten Pfad speichern? » Hello Guest [Login|Register]
Last Post | First Unread Post Print Page | Recommend to a Friend | Add Thread to Favorites

PHP, MySQL

Themen rund um die serverseitige Programmierung mit PHP in Verbindung mit der Datenbanksoftware MySQL
Post New Thread Post Reply

[PHP] $_FILES[filename] => Kompletten Pfad speichern?

     Deutsche Version  English version
Author
Post « Previous Thread | Next Thread »

Kielo Kielo is a female
Weichzeichner


Kielo hat kein Avatar

Registration Date: 08.01.2010
Posts: 74
Location: Schweiz
Program: Photoshop, GIMP, Apophysis, UltraFractal
Deviantart: woronheart

Spacer
[PHP] $_FILES[filename] => Kompletten Pfad speichern?

[PHP] $_FILES[filename] => Kompletten Pfad speichern?

      

Hallo zusammen

Ich arbeite grade an einem Uploadsystem für nen Webshop, damit die da selbst neue Artikel eintragen können.
Nun habe ich folgende Situation:
Man kann Artikelname, Menge, Preis und Kategorie (Media oder Textil) auswählen.
Zusätzlich ist es möglich, ein Bild hochzuladen.
Nun Folgendes:
Wird auf Senden geklickt, dann speichert es alle Textwerte in Sessions und schaut dann, ob da auch was drin steht.
Fehlt nun in Pflichtfeldern was, schreibt es alle nicht leeren Sessions in das dazugehörige Textfeld des Formular und pinselt das Feld, dessen Wert fälschlicherweise fehtl, rot an.
Hier nun das Problem:
Ich habe zwar ein Feld, in dem der clientseitige Pfad zum file drinsteht, aber ich weiss nicht, wie ich den gesamten Pfad als Textwert erhalte.
Ich kann ja lediglich mit $_FILES zugreifen, und dort steht der lokale Pfad auf dem Client nirgendwo.
$_POST['file'] geht ja aber auch nicht.

Hat irgendjemand ne Idee?


Code
php:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
51:
52:
53:
54:
55:
56:
57:
58:
59:
60:
61:
62:
63:
64:
65:
66:
67:
68:
69:
70:
71:
72:
73:
74:
75:
76:
77:

<?php
    //set vars
    $uploadPath "shop/";
    $action $_GET['action'];
    
    //check whether $action is set
    if ($action == 'send'){
        //set vars
        $name $_POST['bez'];
        $cat $_POST['kategorie'];
        $number $_POST['anzahl'];
        $price $_POST['preis'];
        //set vars for uploaded pic
        $picName $_FILES['bild']['name'];
        $picType $_FILES['bild']['type'];
        $picTmpName $_FILES['bild']['tmp_name'];
        
        //set Sessions
        $_SESSION['name'] = $name;
        $_SESSION['cat'] = $cat;
        $_SESSION['number'] = $number;
        $_SESSION['price'] = $price;
        
        //check entries        
        if (!empty($name) && !empty($cat) && !empty($price) && ((!empty($picName) && stristr($picType,'image')) || empty($picName))){
                    if (empty($number)){
                        $number '9999';
                    }
                    if (empty($picName)){
                        $sqlPicPath "$uploadPath/none.jpg";
                    }
                    else $sqlPicPath "$uploadPath/$picName";
                    
                    move_uploaded_file($picName,$uploadPath);
        }
        else{
            $errorStyle "style=\"background-color: #ff0000;\"";
            if (empty($name)){
                $nameStyle $errorStyle;
            }
            if (empty($cat)){
                $catStyle $errorStyle;
            }
            if (empty($price)){
                $priceStyle $errorStyle;
            }
            if (!empty($picName) && !stristr($picType,'image')){
                $imgStyle "background-color: #ff0000;";
            }
        }
    }
?>

<a name="formular">&nbsp;</a><form enctype="multipart/form-data" action="?sid=17&amp;action=send" method="post">
    <b>Name</b><br>
    <input type="text" name="bez" <?= $nameStyle?>/><br><br>
    <b>Kategorie</b><br>
    <select name="kategorie" size="1">
        <option value="media">Media</option>
        <option value="textil">Textilien</option>
    </select><br><br>
    
    <b>Anzahl</b><br>
    <input type="text" name="anzahl"/><br><br>
    
    <b>Preis</b><br>
    <input type="text" name="preis" <?= $priceStyle?>/><br><br>
    
    <b>Bild</b><br>
    <input type="file" name="bild" style="width: 99%; <?= $imgStyle?>"/><br><br>
    
    <b>Info</b>
    <textarea name="info"></textarea><br><br>
    <input type="submit" value="Speichern"/> <input type="reset" value="Reset"/>
</form>

... Wenn ich mir das so anschaue.. Ich sollte den Code noch etwas zusammenpacken..
[PHP] $_FILES[filename] => Kompletten Pfad speichern? 20.02.2010 17:56 Kielo is offline Homepage of Kielo Search for Posts by Kielo

Surako Surako is a male
Abwedler


Avatar von Surako

Registration Date: 01.03.2009
Posts: 249
Location: Bayern
Program: Photoshop CS5 Extended
Deviantart: stpfeifer

Spacer
      

Wofür brauchst du denn den gesamten Pfad als Textwert ??





.:: Artgroup ::.

.:: quantum .::. raD1anT .::. Seb@stian .::. -Soul .::. Surako .::. Tuneup91 ::.
[PHP] $_FILES[filename] => Kompletten Pfad speichern? 20.02.2010 18:16 Surako is offline Homepage of Surako Search for Posts by Surako

Kielo Kielo is a female
Weichzeichner


Kielo hat kein Avatar

Registration Date: 08.01.2010
Posts: 74
Location: Schweiz
Program: Photoshop, GIMP, Apophysis, UltraFractal
Deviantart: woronheart

Thread Starter Thread Started by Kielo
Spacer
      

Damit ich den wieder in's Feld als Value reinkriege.

Wenn zB der User alles eintippt, aber (warum auch immer) den Artikelnamen vergisst, dann sind eigentlich alle geschriebenen Werte noch da, nur das Bild muss neu ausgewählt werden.
Könnte ich aber den gesamten clientpath speichern und dann als value wieder reinsetzen, dann müsste der User das Bild eben nicht neu auswählen.

[PHP] $_FILES[filename] => Kompletten Pfad speichern? 20.02.2010 18:20 Kielo is offline Homepage of Kielo Search for Posts by Kielo

|~Râdîant~| |~Râdîant~| is a male
Polygonmeister


Avatar von |~Râdîant~|

Registration Date: 15.04.2007
Posts: 778
Location: Berlin
Program: Adobe Photoshop CS4
Deviantart: radiantgfx

Spacer
      

Evtl. ist es eh nicht mehr aktuell, aber nunja.

Wenn das Formular bereits einmal abgeschickt wurde, wurde ja eigentlich auch das Bild mit hochgeladen.

Es wurde ja auch verschoben mit dem Befehl:
move_uploaded_file($picName,$uploadPath);

Überprüfe doch einfach, ob $picName und $uploadPath !empty sind.
Wenn sie leer sind, dorderst du auf, das Bild nochma hochzuladen.
Wenn sie gefüllt sind, zeigst du das Bild an oder ein Formular, um es doch noch zu ersetzen.



This post has been edited 1 time(s), it was last edited by |~Râdîant~|: 01.04.2010 19:42.

[PHP] $_FILES[filename] => Kompletten Pfad speichern? 01.04.2010 19:41 |~Râdîant~| is offline Search for Posts by |~Râdîant~|

Kielo Kielo is a female
Weichzeichner


Kielo hat kein Avatar

Registration Date: 08.01.2010
Posts: 74
Location: Schweiz
Program: Photoshop, GIMP, Apophysis, UltraFractal
Deviantart: woronheart

Thread Starter Thread Started by Kielo
Spacer
      

@radiant (sorry, bin faul)
danke erst mal. Das Problem ist ja nicht, dass die nicht leer sein dürfen.
Es ist mehr, wenn zum Beispiel der Name des Artikels leer ist, wird das Formular neu geladen.
Hat der User jetzt aber nen Picpath eingegeben, ist der beim Reload auch weg.
Ich würd's aber genr haben, dass, wenn das Formualr neu kommt, weil zB der Artikelname vergessen wurde, der Pfad zum Bild noch immer da steht, wenn da einer war.

Verstehst..? oder hab ich Dich falsch verstanden?

lG

[PHP] $_FILES[filename] => Kompletten Pfad speichern? 10.04.2010 19:50 Kielo is offline Homepage of Kielo Search for Posts by Kielo

Jones
Zauberstabbenutzer


Jones hat kein Avatar

Registration Date: 16.09.2009
Posts: 14

Spacer
      

Wie wärs denn wenn du dem Input-Feld das Attribut "value" hinzufügst. Und darein dann deine $_Files Variable schreibst, damit nach dem Abschicken dein Path im Textfeld noch steht ?!

This post has been edited 1 time(s), it was last edited by Jones: 11.04.2010 10:29.

[PHP] $_FILES[filename] => Kompletten Pfad speichern? 11.04.2010 10:28 Jones is offline Search for Posts by Jones

Kielo Kielo is a female
Weichzeichner


Kielo hat kein Avatar

Registration Date: 08.01.2010
Posts: 74
Location: Schweiz
Program: Photoshop, GIMP, Apophysis, UltraFractal
Deviantart: woronheart

Thread Starter Thread Started by Kielo
Spacer
      

@Jones
Hm? Ich denke, im $FILES Array stehen nur die Werte vom Server, also zB der Pfad des Bildes auf dem Server..?

[PHP] $_FILES[filename] => Kompletten Pfad speichern? 20.04.2010 11:46 Kielo is offline Homepage of Kielo Search for Posts by Kielo
 
Spacer
   
GFX-Sector
unregistered


 hat kein Avatar


Spacer

Have you enjoyed this topic?


If you were enjoying this post and if you keen on reading more interesting stuff then do not hesitate to complete the free sign up.

After the free registration you will gain access to all areas and you will be able to communicate with other artists from all over the world.

In addition you will benefit from our Photoshop and coding section as well as from our huge (hundreds of gigabytes) free resource section where you can find everything you will need to be a successful (web) designer/artist.

Sign up now and enjoy the advantages as a registered member.

(This website will be ad-free after a complete free sign up.)

New Post 20.04.2010 11:46  
Tree Structure | Board Structure
Post New Thread Post Reply
GFX-Sector » Coding Area » Webentwicklung » PHP, MySQL » [PHP] $_FILES[filename] => Kompletten Pfad speichern?

Similar topics to [PHP] $_FILES[filename] => Kompletten Pfad speichern?
Thread
[Problem] kann nicht mehr als jpg/jpeg/jpe speichern (Forum: Fragen & Probleme)
[Problem] Pfad ist zu rund (Forum: Fragen & Probleme)
[Problem] Keine *.png mehr laden und speichern (Forum: Fragen & Probleme)
[Frage] Render transparent speichern (Forum: Fragen & Probleme)
[SUCHE] [PHP] Gästebuch Script/ Tutorials (Forum: Tutorial Suche)