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  Weiter
 

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


Anmeldungsdatum: 10.02.2009
Beiträge: 25
Wohnort: Eberswalde

BeitragVerfasst am: 11.02.2009 10:26:43    Titel: Bild Upload per php Antworten mit Zitat

Hallo,
ich habe jetzt etwas rumprobiert und festgestellt das das foto gespeichert wird nur die DB-Einträge werden nicht gemacht. Habe jetzt php5... mit php4 funktionieren die DB-Einträge wieder aber das foto wird nicht übertragen.
In meiner DB wird eine ID vergeben mit Attribute=unsigned, Extra= auto_increment.
Und für die Fotos wird jeweils der name in "userfile" eingetragen.
Mit freundlichen Gruß
marck
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Frosty
Häufiger Poster


Anmeldungsdatum: 27.10.2008
Beiträge: 221

BeitragVerfasst am: 11.02.2009 11:12:23    Titel: Antworten mit Zitat

Du musst gucken, welche Variable für userfile gespeichert wird und diese notfalls ändern.

Klasse, wenn deine User schon eine ID haben, dann brauchst du ja nur noch die zweite Tabelle für die Bilder.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
marck48
Häufiger Poster


Anmeldungsdatum: 10.02.2009
Beiträge: 25
Wohnort: Eberswalde

BeitragVerfasst am: 11.02.2009 11:38:57    Titel: Bild Upload per php Antworten mit Zitat

Userfile ist eine Spalte in meiner DB...
und dorthin wurden mit dem alten script der Dateiname geschrieben. So sieht jetzt mein code aus

<?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.";
}


if ($submit) {
$db = mysql_connect("localhost", "Uxxxxx","pass");
mysql_select_db("DBxxxx",$db);
$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
('$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','$myFilename','$zimmer','$nebenkosten','$gewerbe','$kaufmiete','$etage','$datum','$deutsch','$kaufpreis')";

$result = mysql_query($sql,$db);
echo ('<p class="upload" align="center">Ihre Daten wurden abgeschickt! - Vielen Dank!<br><br></p>');
}
}



?>

ich habe die Änderungen $filename in $myFilename vorgenommen und userfile ist doch geblieben oder?
gruß
marck
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Frosty
Häufiger Poster


Anmeldungsdatum: 27.10.2008
Beiträge: 221

BeitragVerfasst am: 11.02.2009 12:15:10    Titel: Antworten mit Zitat

Ja, soweit ich sehen konnte ist das ok.

Was genau hast du da vor? So aus reiner Neugier. Eben warens noch oldtimer, jetzt sinds Immobilien? Klingt entweder nach nur einfach mal so testen oder nach einem Riesen-Projekt.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
marck48
Häufiger Poster


Anmeldungsdatum: 10.02.2009
Beiträge: 25
Wohnort: Eberswalde

BeitragVerfasst am: 11.02.2009 12:29:20    Titel: Bild Upload per php Antworten mit Zitat

Ein Oldtimerportal soll das werrden wo user ihre oldtimer anmelden und bilder uploaden können und andere wieder die welche suchen sie dort finden.
Immobilien ist nur zum Test, wenn dort alles klappt übertrag ich es auf das oldtimerportal.
Ich habe jetzt ein verzeichnis auf dem server angelegt "upload" worin ich die upload.php geschoben habe weil unter php5 andere scripte nicht mehr richtig fuktionierten.
Jetzt ist für das Verzeichnis "upload" php5 und für alle anderen php4.
Was muß ich denn ändern in der upload.php (der code aus der letzten nachricht) das es mit php5 funktioniert?
Gruß
marck
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Frosty
Häufiger Poster


Anmeldungsdatum: 27.10.2008
Beiträge: 221

BeitragVerfasst am: 11.02.2009 12:39:10    Titel: Antworten mit Zitat

Was genau macht oder macht das Skript denn nicht?

Du musst schon genauer werden. "Speichert nicht mehr in Datenbank" reicht mir nicht aus. Gibts ne Fehlermeldung?
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
marck48
Häufiger Poster


Anmeldungsdatum: 10.02.2009
Beiträge: 25
Wohnort: Eberswalde

BeitragVerfasst am: 11.02.2009 12:52:36    Titel: Bild Upload per php Antworten mit Zitat

Nein keine Fehlermeldung die im Formular eingegebenen Daten werden nicht übertragen außer das Foto wird mit neuen namen(Bild_x) in das verzeichnis fotos gespeichert.
Wenn ich auf php4 wieder umstelle funktioniert die übertragung der daten wieder (dann aber das foto nicht mehr)
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Frosty
Häufiger Poster


Anmeldungsdatum: 27.10.2008
Beiträge: 221

BeitragVerfasst am: 11.02.2009 12:56:19    Titel: Antworten mit Zitat

Woher beziehst du die Variable $submit ?
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
marck48
Häufiger Poster


Anmeldungsdatum: 10.02.2009
Beiträge: 25
Wohnort: Eberswalde

BeitragVerfasst am: 11.02.2009 13:19:21    Titel: Bild Upload per php Antworten mit Zitat

Ich weiß nicht aber ich denke aus dem Formular

<input type="submit" name="submit" value="Abschicken">
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Frosty
Häufiger Poster


Anmeldungsdatum: 27.10.2008
Beiträge: 221

BeitragVerfasst am: 12.02.2009 09:04:01    Titel: Antworten mit Zitat

Vielleicht fang den Post mal so ab.

Code:
if($_POST['submit'])
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 10:50:00    Titel: Bild Upload per php Antworten mit Zitat

Hallo,
ich muß mich erstmal bedanken für deine Hilfe und Ausdauer mit mir... Vielen Dank!

Ich hab das mal jetzt so gemacht wie du in der letzten nachricht geschrieben hast. Ein neuer Datensatz wird in der DB angelegt und eine ID wird vergeben.
Das Foto wird gespeichert der namen wird vergeben ( zB Bild_1.jpg) dieser namen wird auch in die DB in die Spalte "userfile" geschrieben nur werden die anderen Daten aus dem Formular zB "name" "vorname" "plz" "ort" usw nicht in den neuen Datensatz geschrieben die bleiben einfach leer. Ich sende mal den kompletten code incl. formular mit






<form method="post" action="upload.php" enctype="multipart/form-data" name="Formular1">

<input type="text" name="firmenname" value="<? echo $firmenname ?>" size="45" class="lang">

<input type="text" name="vorname" value="<? echo $vorname ?>" size="45" class="lang">

<input type="text" name="name" value="<? echo $name ?>" size="45" class="lang">

<input type="text" name="email_besitzer" value="<? echo $email_besitzer ?>" size="45" class="lang">

<input type="text" name="strasse_besitzer" value="<? echo $strasse_besitzer ?>" size="45" class="lang">

<input type="hidden" name="MAX_FILE_SIZE" value="1000000">
<input name="userfile" type="file" size="22" class="foto">

<input type="submit" name="submit" value="Abschicken">

</form>


<?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.";
}


if($_POST['submit']) {
$db = mysql_connect("localhost", "Uxxxx","pass");
mysql_select_db("DBxxxxx",$db);
$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
('$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','$myFilename','$zimmer','$nebenkosten','$gewerbe','$kaufmiete','$etage','$datum','$deutsch','$kaufpreis')";

$result = mysql_query($sql,$db);
echo ('<p class="upload" align="center">Ihre Daten wurden abgeschickt! - Vielen Dank!<br><br></p>');

}
}


?>

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 12:35:35    Titel: Antworten mit Zitat

Du solltest natürlich alle gesendeten Formulardaten mit $_POST[''] abfangen.

zb:

Code:
$_POST['firmenname'];
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 13:36:27    Titel: Bild Upload per php Antworten mit Zitat

Hab ich gemacht funktioniert nicht
wie gehabt neuer datensatz wird angelegt aber keine daten eingetragen ich verzweifle langsam.

ist es so richtig



Code:

$_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'];

if($_POST['submit'])

[/code]
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Frosty
Häufiger Poster


Anmeldungsdatum: 27.10.2008
Beiträge: 221

BeitragVerfasst am: 12.02.2009 14:13:19    Titel: Antworten mit Zitat

Nein, nicht verzweifeln. Meistens ist es nur ein winzig-kleiner Schritt.

So sollte es richtig sein. Der Ãœbersicht halber
habe ich das mal abgekürzt.

Code:
$sql = "INSERT INTO Immobilien (anr,firmenname) VALUES ('$_POST['anr']','$_POST['firmenname']');
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 14:25:46    Titel: Bild Upload per php Antworten mit Zitat

So richtig? hab es auch abgekürzt

Code:


if($_POST['submit']) {
  $db = mysql_connect("localhost", "Uxxxxx","pass");
  mysql_select_db("DBxxxx",$db);
  $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
  ('$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','$myFilename','$zimmer','$nebenkosten','$gewerbe','$kaufmiete','$etage','$datum','$deutsch','$kaufpreis')";
 
$_POST['anr'];
$_POST['firmenname'];
$_POST['vorname'];
$_POST['name'];
$_POST['strasse_besitzer'];
$_POST['plz_besitzer'];
$_POST['email_besitzer'];


so hab ich es probiert geht auch nicht
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  Weiter
Seite 2 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.