HTMLWorld - HTML, CSS, JavaScript, PHP, Java, Flash und vieles mehrHTMLWorld:   Home | Impressum
 

 
 

Anzeige 
 
HTMLWorld » Forum

Thema anzeigen - Bild Upload per php

 FAQFAQ   SuchenSuchen   MitgliederlisteMitgliederliste   BenutzergruppenBenutzergruppen   RegistrierenRegistrieren 
 ProfilProfil   Einloggen, um private Nachrichten zu lesenEinloggen, um private Nachrichten zu lesen   LoginLogin 

Bild Upload per php
Gehe zu Seite Zurück  1, 2, 3
 

Neues Thema eröffnen   Neue Antwort erstellen    HTMLWorld Foren-Übersicht
   PHP
Vorheriges Thema:
Nächstes Thema:  
Autor Nachricht
Frosty
Häufiger Poster


Anmeldungsdatum: 27.10.2008
Beiträge: 221

BeitragVerfasst am: 12.02.2009 14:40:09    Titel: Antworten mit Zitat

Hast du dir meinen vorherigen beitrag überhaupt durchgelesen?

So ist das auch falsch. Direkt im SQL-Query müssen POST-Variablen rein. NICHT drunter, NICHT drüber.

Kopf nicht hängen lassen. Es ist noch kein Meister vom Himmel gefallen. Aber dein Vorhaben scheint mir für einen Anfänger wie dich doch ziemlich mächtig.

Ich denke, es wird nicht lange dauern und du wirst erneut festhängen und verzweifeln.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
marck48
Häufiger Poster


Anmeldungsdatum: 10.02.2009
Beiträge: 25
Wohnort: Eberswalde

BeitragVerfasst am: 12.02.2009 15:13:45    Titel: Bild Upload per php Antworten mit Zitat

Du hast sicher recht aber es hat ja schon funktioniert
seit php 5 geht es nicht mehr

so müßte es richtig sein oder?

Code:


$sql = "INSERT INTO Immobilien (anr,firmenname,vorname,name,strasse_besitzer,plz_besitzer,ort_besitzer,email_besitzer,tel_besitzer,kategorie_wohnung,kategorie_haus,kategorie_grund,kategorie_bueros,kategorie_prod,kategorie_einzel,kategorie_gastro,plz,ort,strasse,baujahr,groesse_wohnung,groesse_haus,groesse_grund,groesse_bueros,groesse_prod,groesse_einzel,groesse_gastro,preis_miete,preis_kauf,lage,beschreibung,userfile,zimmer,nebenkosten,gewerbe,kaufmiete,etage,datum,deutsch,kaufpreis) VALUES
  ('$_POST['anr']','$_POST['firmenname']','$_POST['vorname']','$_POST['name']','$_POST['strasse_besitzer']','$_POST['plz_besitzer']','$_POST['email_besitzer']','$_POST['tel_besitzer']','$_POST['ort_besitzer']','$_POST['kategorie_wohnung']','$_POST['kategorie_haus']','$_POST['kategorie_grund']','$_POST['kategorie_bueros']','$_POST['kategorie_prod']','$_POST['kategorie_einzel']','$_POST['kategorie_gastro']','$_POST['plz']','$_POST['ort']','$_POST['strasse']','$_POST['baujahr']','$_POST['groesse_wohnung']','$_POST['groesse_haus']','$_POST['groesse_grund']','$_POST['groesse_bueros']','$_POST['groesse_prod']','$_POST['groesse_einzel']','$_POST['groesse_gastro']','$_POST['preis_miete']','$_POST['preis_kauf']','$_POST['lage']','$_POST['beschreibung']','$_POST['userfile']','$_POST['zimmer']','$_POST['nebenkosten']','$_POST['gewerbe']','$_POST['kaufmiete']','$_POST['etage']','$_POST['datum']','$_POST['deutsch']','$_POST['kaufpreis']')";
 


hab folgende Fehlermeldung jetzt bekommen

Parse error: syntax error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting T_STRING or T_VARIABLE or T_NUM_STRING in /mnt/web1/53/49/520549/htdocs/immobilien/upload/upload.php on line 393
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Frosty
Häufiger Poster


Anmeldungsdatum: 27.10.2008
Beiträge: 221

BeitragVerfasst am: 12.02.2009 15:21:11    Titel: Antworten mit Zitat

Setzt dich mit den Fehlermeldungen auseinander, so kannst du prima lernen - wirklich.

Die Fehlermeldung besagt, dass PHP mit den Anfrühgungszeichen der POST-Variablen nicht zurecht kommt.

FALSCH: echo 'Hallo $_POST['username']';

RICHTIG: echo 'Hallo $_POST[username]';


Setz' dich unbedingt nochmal mit der PHP-Syntax auseinander. Sowas ist Basis-Wissen.

Schönen Tag.
Frosty
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
marck48
Häufiger Poster


Anmeldungsdatum: 10.02.2009
Beiträge: 25
Wohnort: Eberswalde

BeitragVerfasst am: 12.02.2009 15:33:12    Titel: Bild Upload per php Antworten mit Zitat

Das werde ich machen

vielen Dank für deine Hilfe

Gruß
marck
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Frosty
Häufiger Poster


Anmeldungsdatum: 27.10.2008
Beiträge: 221

BeitragVerfasst am: 12.02.2009 17:02:43    Titel: Antworten mit Zitat

Naja, mich würd schon interessieren ob es denn jetzt geklappt hat.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
marck48
Häufiger Poster


Anmeldungsdatum: 10.02.2009
Beiträge: 25
Wohnort: Eberswalde

BeitragVerfasst am: 25.02.2009 11:56:59    Titel: Bild upload per php Antworten mit Zitat

Hallo Frosty,
es tut mir leid das ich nicht sofort geantwortet hab war krank und kann erst jetzt...
es hat soweit alles funktioniert bis auf das kleine problem das in die DB immer der generierte namen eingetragen wird auch wenn kein foto im Formular ausgewählt wird
vielleicht kannst du mir ja nochmal helfen
Gruß marck
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Frosty
Häufiger Poster


Anmeldungsdatum: 27.10.2008
Beiträge: 221

BeitragVerfasst am: 25.02.2009 13:48:16    Titel: Antworten mit Zitat

Welcher generierte Name?
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
marck48
Häufiger Poster


Anmeldungsdatum: 10.02.2009
Beiträge: 25
Wohnort: Eberswalde

BeitragVerfasst am: 25.02.2009 13:58:01    Titel: Bild upload per php Antworten mit Zitat

Also das letzte Bild ist "Bild13.jpg" und jetzt schreibt er immer "Bild14.jpg" in die DB obwohl ich im Formular kein Bild ausgewählt habe
Gruß
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
marck48
Häufiger Poster


Anmeldungsdatum: 10.02.2009
Beiträge: 25
Wohnort: Eberswalde

BeitragVerfasst am: 25.02.2009 14:01:31    Titel: Bild upload per php Antworten mit Zitat

Hier nochmal das script für den upload
Code:

<?php
{
$file = $_FILES['userfile']['tmp_name'];
$filesize = $_FILES['userfile']['size'];
$path = "../fotos/";


//Type abfangen
$filetype = $_FILES['userfile']['type'];

switch($filetype)
{
   case "image/pjpeg":
      $type = ".jpg";
   break;
   
   case "image/gif":
      $type = ".gif";
   break;
   
   case "image/jpeg":
      $type = ".jpg";
   break;
   
   case "image/x-png":
      $type = ".png";
   break;
   //usw.
}

//anzahl der dateien im Verzeichnis
$all_files = count(scandir($path)) - 2;



//Jetzt individuellen Namen für das Bild generieren
$myFilename = "bild_".$all_files.$type;


if (!file_exists($path.$myFilename))
{
   if(!copy($file,$path.$myFilename))
      echo "Konnte nicht speichern.";
   else
      echo "Gespeichert.";
}
else
{
   echo "Foto schon vorhanden.";
}
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Frosty
Häufiger Poster


Anmeldungsdatum: 27.10.2008
Beiträge: 221

BeitragVerfasst am: 25.02.2009 14:21:52    Titel: Antworten mit Zitat

Ja, klar. Es wird ein Bildname generiert, egal ob eins hochgeladen wird oder nicht:

Code:
$myFilename = "bild_".$all_files.$type;



Umgehen kannst du das indem du per if-Abfrage abfängst, ob überhaupt ein bild angegeben wurde. Wenn nicht dann gleich zum SQL-Query springen.

Code:
if($_FILES['userfile']['tmp_name'])
{
   $file = $_FILES['userfile']['tmp_name'];
   $filesize = $_FILES['userfile']['size'];
   $path = "../fotos/";
   
   
   //Type abfangen
   $filetype = $_FILES['userfile']['type'];
   
   switch($filetype)
   {
      case "image/pjpeg":
        $type = ".jpg";
      break;
      
      case "image/gif":
        $type = ".gif";
      break;
      
      case "image/jpeg":
        $type = ".jpg";
      break;
      
      case "image/x-png":
        $type = ".png";
      break;
      //usw.
   }
   //anzahl der dateien im Verzeichnis
   $all_files = count(scandir($path)) - 2;
   
   //Jetzt individuellen Namen für das Bild generieren
   $myFilename = "bild_".$all_files.$type;


   if (!file_exists($path.$myFilename))
   {
      if(!copy($file,$path.$myFilename))
        echo "Konnte nicht speichern.";
      else
        echo "Gespeichert.";
   }
   else
   {
      echo "Foto schon vorhanden.";
   }
}
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
marck48
Häufiger Poster


Anmeldungsdatum: 10.02.2009
Beiträge: 25
Wohnort: Eberswalde

BeitragVerfasst am: 25.02.2009 14:39:01    Titel: Bild upload per php Antworten mit Zitat

Vielen Dank für die Hilfe
Klappt jetzt wunderbar
Gruß
marck
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen    HTMLWorld Foren-Übersicht
   PHP
Alle Zeiten sind GMT + 1 Stunde
Gehe zu Seite Zurück  1, 2, 3
Seite 3 von 3

 
Gehe zu:  
Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.