SELFPHP: Version 5.8.2 Befehlsreferenz - Tutorial – Kochbuch – Forum für PHP Einsteiger und professionelle Entwickler

SELFPHP


Professional CronJob-Service

Suche



CronJob-Service    
bei SELFPHP mit ...



 + minütlichen Aufrufen
 + eigenem Crontab Eintrag
 + unbegrenzten CronJobs
 + Statistiken
 + Beispielaufrufen
 + Control-Bereich

Führen Sie mit den CronJobs von SELFPHP zeitgesteuert Programme auf Ihrem Server aus. Weitere Infos



:: Buchempfehlung ::

Webseiten professionell erstellen

Webseiten professionell erstellen zur Buchempfehlung
 

:: Anbieterverzeichnis ::

Globale Branchen

Informieren Sie sich über ausgewählte Unternehmen im Anbieterverzeichnis von SELFPHP  

 

:: Newsletter ::

Abonnieren Sie hier den kostenlosen SELFPHP Newsletter!

Vorname: 
Name:
E-Mail:
 
 

Zurück   PHP Forum > SELFPHP > PHP Grundlagen
Hilfe Community Kalender Heutige Beiträge Suchen

PHP Grundlagen Hier kann über grundlegende Probleme oder Anfängerschwierigkeiten diskutiert werden

Antwort
 
Themen-Optionen Ansicht
  #1  
Alt 22.03.2009, 10:00:41
onomo onomo ist offline
Anfänger
 
Registriert seit: Feb 2009
Alter: 46
Beiträge: 12
problem beim auslesen eines array

Moin Moin,

hier erstmal mein code des Problems:

PHP-Code:
<html>
<
head>
<
titleBild upload direkt aus dem Browser </title>
</
head>
<
form action="http://127.0.0.1/upload.php" enctype="multipart/form-data" method="POST">
<
input type="hidden" name="MAX_FILE_SIZE" value="10000000">
Wählen Sie eine Datei
<input type="file" name="image[]"> <br>
<
input type="submit" value="hochladen">
</
form> <br><br>
</
body>
</
html
wenn ich nun versuche im upload.php die globale Variable $_FILES['image']['size'] auszulesen, bekomme ich immer nur Array als ausgabe Oo.

Ich möchte gern bilder in meiner mysql Datenbank in einem Blob Feld abspeichern.

Kann jemand den Fehler entdecken?

Grüsse
onomo

Geändert von Damir (24.03.2009 um 08:31:30 Uhr) Grund: Verhaltensregeln im SELFPHP-Forum
Mit Zitat antworten
  #2  
Alt 22.03.2009, 11:09:21
Benutzerbild von urvater
urvater urvater ist offline
Senior Member
 
Registriert seit: Feb 2006
Ort: Wallrabenstein
Alter: 55
Beiträge: 1.044
AW: problem beim auslesen eines array

Ich sehe nur den HTML-Code aber keinen PHP Code, der irgend welche Werte ermitteln will bzw. anderweitig auf dieses Formular reagiert.
Mit Zitat antworten
  #3  
Alt 22.03.2009, 15:28:18
onomo onomo ist offline
Anfänger
 
Registriert seit: Feb 2009
Alter: 46
Beiträge: 12
AW: problem beim auslesen eines array

Zitat:
Zitat von urvater Beitrag anzeigen
Ich sehe nur den HTML-Code aber keinen PHP Code, der irgend welche Werte ermitteln will bzw. anderweitig auf dieses Formular reagiert.
ok, dachte der sei eher unwichtig, also hier der php code:
PHP-Code:
<?

/* Datenbankserver - In der Regel die IP */
$db_server = 'localhost';

/* Datenbankname */
$db_name = 'filmdatenbank';

/* Datenbankuser */
$db_user = 'xxxxx';

/* Datenbankpasswort */
$db_passwort = 'xxxxx';

/* Erstellt Connect zu Datenbank her */
$db = @ mysql_connect ( $db_server, $db_user, $db_passwort )
   or die ( 'Konnte keine Verbindung zur Datenbank herstellen' );

$db_check = @ mysql_select_db ( $db_name );

if ( $db )
{
  echo 'Verbindung zur Datenbank wurde hergestellt';
}

function upload()
{  $maxsize = $_POST['MAX_FILE_SIZE'];

         if(is_uploaded_file($_FILES['image']['tmp_name']))
        {

                 // check the file is less than the maximum file size
                 if($_FILES['image']['size'] < $maxsize)
                 {
                         // prepare the image for insertion
                          $imgData =addslashes (file_get_contents($_FILES['image']['tmp_name']));
                          // $imgData = addslashes($_FILES['image']);

                         // get the image info..
                         $size = getimagesize($_FILES['image']['tmp_name']);
                         echo '$size: '.$size.'<br>';
                         // our sql query
                         $sql = "INSERT INTO filmtitel
                         (idfilmtitel , Titel ,Original Titel, Genre, Soundtrack_idSoundtrack, Jahr, Cover)
                         VALUES
                         ('','','','','','','{$imgData}')";

                         // insert the image
                         if(!mysql_query($sql))
                         {
                                 echo 'Unable to upload file';
                         }
                 
        }

    else {
         // if the file is not less than the maximum allowed, print an error
              echo '<br>Bildgröße überschreitet das Limit<br>';
              echo 'Limit ist '.$maxsize.'<br>';
              echo 'Dateigröße vom '.$_FILES['image']['name'].' ist '.$_FILES['image']['size'].'<br>';
         }
}
}



if(!isset($_FILES['image']))
{
         echo '<p>Bitte eine Datei auswählen</p>';
}
else
{
         try
         {
                upload();
         }
         catch(Exception $e)
         {
                 
                 echo 'Fehler beim upload';
         }
}

mysql_close();
?>

Geändert von vt1816 (23.03.2009 um 09:57:44 Uhr) Grund: Verhaltensregeln im SelfPHP-Forum
Mit Zitat antworten
  #4  
Alt 23.03.2009, 14:12:34
Benutzerbild von urvater
urvater urvater ist offline
Senior Member
 
Registriert seit: Feb 2006
Ort: Wallrabenstein
Alter: 55
Beiträge: 1.044
AW: problem beim auslesen eines array

Wenn ich das jetzt alles richtig interpretiere baust du durch deine Namensgebung im Formularfeld 'image' ein mehrdimensionales Array auf. In deinem PHP Script gibts du aber nicht an, welches Array du innerhalb von 'image' auslesen willst.

Da du eh nur 1 Formularfeld zum Hochladen besitzt würde ich das Formular umbenennen.
HTML-Code:
<input type="file" name="image">
So sollte es ohne Änderung in PHP funktionieren.

Du kannst ja mal bevor du den Upload weiter verarbeitest einen var_dump oder print_r auf $_FILE setzen, dann siehst du was dir übergeben wird.

Geändert von urvater (23.03.2009 um 14:14:41 Uhr) Grund: letzten Satz eingefügt
Mit Zitat antworten
  #5  
Alt 23.03.2009, 15:12:01
onomo onomo ist offline
Anfänger
 
Registriert seit: Feb 2009
Alter: 46
Beiträge: 12
AW: problem beim auslesen eines array

Zitat:
Zitat von urvater Beitrag anzeigen
Wenn ich das jetzt alles richtig interpretiere baust du durch deine Namensgebung im Formularfeld 'image' ein mehrdimensionales Array auf. In deinem PHP Script gibts du aber nicht an, welches Array du innerhalb von 'image' auslesen willst.

Da du eh nur 1 Formularfeld zum Hochladen besitzt würde ich das Formular umbenennen.
HTML-Code:
<input type="file" name="image">
So sollte es ohne Änderung in PHP funktionieren.

Du kannst ja mal bevor du den Upload weiter verarbeitest einen var_dump oder print_r auf $_FILE setzen, dann siehst du was dir übergeben wird.
Danke, werde ich mal versuchen.

Ich hatte den Code von HIER und dachte ich muss das Feld image[] nennen um auf die verschiedenen Attribute, wie z.b. Name, Größe, Typ usw., des Images zugreifen zu können.

Edith fragt: Sind Daten vom Typ File grundsätzlich schon ein Array? Ein mehrdimensionales Array schaut in C nämlich so aus Arrayname[][]

Geändert von onomo (23.03.2009 um 15:13:47 Uhr)
Mit Zitat antworten
  #6  
Alt 23.03.2009, 18:19:15
onomo onomo ist offline
Anfänger
 
Registriert seit: Feb 2009
Alter: 46
Beiträge: 12
AW: problem beim auslesen eines array

es läuft jetzt :) super danke.

jetzt hätte ich allerdings noch eine frage. ich möchte mir die bilder natürlich auch anzeigen lassen. dazu habe ich folgenden code:

PHP-Code:
<?php
/* Datenbankserver - In der Regel die IP */
$db_server 'localhost';

/* Datenbankname */
$db_name 'filmdatenbank';

/* Datenbankuser */
$db_user 'root';

/* Datenbankpasswort */
$db_passwort 'lotus';

/* Erstellt Connect zu Datenbank her */
$db = @ mysql_connect $db_server$db_user$db_passwort )
   or die ( 
'Konnte keine Verbindung zur Datenbank herstellen' );

$db_check = @ mysql_select_db $db_name );

if ( 
$db )
{
    if(isset(
$_GET['filmid']) && is_numeric($_GET['filmid']))
    {

        
// get the image from the db
        
$sql "SELECT cover FROM filmtitel WHERE idfilmtitel = ".$_GET['filmid'];
        
// the result of the query
        
$result mysql_query("$sql") or die("Invalid query: " mysql_error());
        
// set the header for the image
        
header("Content-type: image/jpeg");
        echo 
$result['cover'];
        
// close the db link
        
mysql_close();
    }
    else {
        echo 
'Please use a real id number';
    }
}
?>
allerdings ist es so, dass hier nichts angezeigt wird. der browser erkennt zwar, dass ein typ grafik erwartet wird, aber er zeigt nichts an.

bzw. es wird angezeigt: http://127.0.0.1/getpic.php?filmid=38
wobei die 38 von mir übergeben wurde als id und dort auch daten liegen im blob feld

Geändert von onomo (23.03.2009 um 18:22:36 Uhr) Grund: zusatz letzte zeile
Mit Zitat antworten
  #7  
Alt 23.03.2009, 19:13:20
Benutzerbild von urvater
urvater urvater ist offline
Senior Member
 
Registriert seit: Feb 2006
Ort: Wallrabenstein
Alter: 55
Beiträge: 1.044
AW: problem beim auslesen eines array

Also $_FILE ist von Hause aus ein Array. Wegen deinem Anzeigeproblem: Wenn das Bild nur angezeigt wird, wenn du die ID händisch übergibtst, dann ist der generierte Link zur Grafik falsch.
Zur Zeit sehe ich aber nur den Insert und Select aber nicht, wie die $_GET['filmid'] erstellt wird.
Mit Zitat antworten
  #8  
Alt 24.03.2009, 06:27:12
onomo onomo ist offline
Anfänger
 
Registriert seit: Feb 2009
Alter: 46
Beiträge: 12
AW: problem beim auslesen eines array

Zitat:
Zitat von urvater Beitrag anzeigen
Also $_FILE ist von Hause aus ein Array.
DANKE

Zitat:
Zitat von urvater Beitrag anzeigen
Wegen deinem Anzeigeproblem: Wenn das Bild nur angezeigt wird, wenn du die ID händisch übergibtst, dann ist der generierte Link zur Grafik falsch.
Zur Zeit sehe ich aber nur den Insert und Select aber nicht, wie die $_GET['filmid'] erstellt wird.
ich habe die upload.html um ein eingabefeld erweitert, in dem ich händisch die id eingebe.
den html code dazu kann ich erst nachher posten, bin am falschem pc.

edit:
HTML-Code:
<html>
<head>
<title> Bild upload direkt aus dem Browser </title>
</head>
<form action="http://127.0.0.1/upload.php" enctype="multipart/form-data" method="POST">
<input type="hidden" name="MAX_FILE_SIZE" value="10000000">
Wählen Sie eine Datei
<input type="file" name="image"> <br>
<input type="submit" value="hochladen">
</form> <br><br>

<form action="http://127.0.0.1/getpic.php" enctype="multipart/form-data" method="GET">
Geben Sie die ID an
<input type="text" name="filmid"> <br>
<input type="submit" value="bild holen">
</form> <br><br>

</body>
</html>
das bild wird bisher garnicht angezeigt!

Geändert von onomo (24.03.2009 um 08:13:44 Uhr) Grund: zusatz letzte zeile
Mit Zitat antworten
  #9  
Alt 24.03.2009, 12:00:27
onomo onomo ist offline
Anfänger
 
Registriert seit: Feb 2009
Alter: 46
Beiträge: 12
AW: problem beim auslesen eines array

Problem gelöst.

Es musste lauten:

PHP-Code:
header("Content-type: image/jpeg");
echo 
mysql_result($result0); 
vielen dank für die kompetente hilfe an urvater.

mfg
onomo
Mit Zitat antworten
  #10  
Alt 24.03.2009, 14:19:37
Benutzerbild von urvater
urvater urvater ist offline
Senior Member
 
Registriert seit: Feb 2006
Ort: Wallrabenstein
Alter: 55
Beiträge: 1.044
AW: problem beim auslesen eines array

Zitat:
Zitat von onomo Beitrag anzeigen
Problem gelöst.

Es musste lauten:

PHP-Code:
header("Content-type: image/jpeg");
echo 
mysql_result($result0); 
vielen dank für die kompetente hilfe an urvater.

mfg
onomo
Wobei ich gestehen muß, daß ich an den Content-type nicht gedacht habe. Egal hauptsache es funktioniert.
Mit Zitat antworten
Antwort


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind aus.
[IMG] Code ist aus.
HTML-Code ist aus.

Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
mehrdimensionales Array mit unbekannten auslesen? crashT PHP Grundlagen 6 23.03.2009 10:55:50
Array umstrukturieren Tikiwiki PHP Grundlagen 2 28.07.2008 13:24:28
array problem SpiderPOH PHP Grundlagen 10 03.08.2006 16:47:34
Einzelne Daten aus Textdatei Auslesen azubinator PHP Grundlagen 153 17.12.2004 13:36:58
Problem mit Array jwg PHP Grundlagen 4 01.12.2003 17:42:42


Alle Zeitangaben in WEZ +2. Es ist jetzt 15:51:27 Uhr.


Powered by vBulletin® Version 3.8.3 (Deutsch)
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.


© 2001-2024 E-Mail SELFPHP OHG, info@selfphp.deImpressumKontakt