php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger > PHP Tipps 2005

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 05.04.2005, 10:33  
Gast
 
Beiträge: n/a
Standard 2 Bilder uploaden und mit Text versehen

ich bin blutige php anfängerin und komme hier einfach nicht weiter.

bisher verwende ich mein script, das als kleines news-system arbeitet und ermöglicht news auf der startseite inklusive bild anzuzeigen.

nun möchte ich gerne, dass man zu jeder news bis zu 2 bilder speichern kann. die bilder werden in einem ordner "files" gespeichert.

ist das möglich?

wie könnte ich da vorgehen?

hier das script:


PHP-Code:
// check for fileupload
if($_POST['submit'] && $fname && $fname!="none") {
// copy file
// fname ist name der datei MIT pfad
$type substr(strrchr($fname_name,"."),1);
$size $fname_size 1024;
if(
$size 1)
    
$size 1;
$path "../files/";

if(
file_exists($path.$fname_name))
 
unlink($path.$fname_name);
copy($fname$path.$fname_name);

if(
$_POST['submit'] && $fname && $fname!="none"

// connect database
$db1 = new db;
$db1->connect();

// create query
$sql "insert into fenster (name, path, title, beschreibung) values ('".$fname_name."','".$path."','".$fname_name."','')"

und hier das html-formular:


PHP-Code:
[color=blue]echo "<table width=\"100%\"  border=\"0\" cellpadding=\"3\" cellspacing=\"0\">\n";
echo 
"<tr><td colspan=\"3\">[b]Mitteilungen auf der fenster - Seite pflegen:[/b]</td></tr>";
echo 
"<tr><td colspan=\"3\"></td></tr>";
echo 
"<tr><td colspan=\"3\">Neues Bild hinzufügen</td></tr>";
echo 
"<tr><form enctype=\"multipart/form-data\" name=\"uplfrm\" method=\"post\" action=\"".$PHP_SELF."\">\n";
echo 
"<td colspan=\"2\"><input type=\"file\" name=\"fname\"></td>\n";
echo 
"<td colspan=\"2\"><input type=\"file\" name=\"fname\"></td>\n";
echo 
"<td><input type=\"submit\" name=\"submit\" value=\"Bild hinzufügen\"></td></form></tr>\n";

echo 
"<tr><td colspan=\"3\"></td></tr>";[/color

kann mir jemand einen denkanstoss geben?
 
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 05.04.2005, 10:44  
Moderator
 
Benutzerbild von robo47
 
Registriert seit: 03.09.2004
Beiträge: 11.792
PHP-Kenntnisse:
Fortgeschritten
robo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz sein
Standard

1. mal bitte die [quote-tags] weg und color und was da alles drin rumfleigt und einfach nur [php]-tags benutzen
2.
register_globals
http://www.phpfriend.de/ftopic26569.html
-> lesen, verstehen, umsetzen und nicht register_globals auf on stellen !!
3. sollte man ein feld namens ID einführen, sonst ist eine eindeutige identifikation nciht möglich
4. mal die datnbankstrukturen posten
5. ne weitre tabelle erstellen in der du 2 spalten hast NEWS_ID und IMAGE_ID und dann kannst du einfach alle Bilder-id's aus dieser Tabelle beziehen, dann kannst du 1 bild oder 10 für ne news definieren :P und mittels nem join kannst du direkt alle bildinformationen abholen.

mfg
robo47
robo47 ist offline  
Alt 05.04.2005, 10:45  
Erfahrener Benutzer
 
Benutzerbild von JEGO
 
Registriert seit: 01.12.2003
Beiträge: 2.555
PHP-Kenntnisse:
Anfänger
JEGO wird schon bald berühmt werden
Standard

hi marlene,

benutze bitte die php Tags.... dann ist das übersichtlicher.
und zu deinen Bildern folgendes:

PHP-Code:
<?php
$typ
=substr(strrchr($_FILES['bildfile']['name'], '.'), 1);

if(
$_FILES['bildfile']['name']!="")
   { 
//wenn eine file übermittelt wurde 
   
$_FILES['bildfile']['name']= time().".".$typ//nehme aktuelle zeit als filename 
   
$bildname $_FILES['bildfile']['name']; 
   } 

if (
move_uploaded_file($_FILES['bildfile']['tmp_name'], '/pfad zu deinem Bilderordner/' $_FILES['bildfile']['name'])) 
  { 
   
//Hier noch dein Insert in die DB
   
echo "<div align=\"center\">Das Bild wurde gespeichert!</div>";  
  } 
?>
und im Form, kommt das rein:

Code:
<input name="bildfile" type="file" id="bildfile" size="50">
__________________
Gruß JEGO

Ein PHP Script tut, was Du schreibst, nicht was Du willst.
JEGO ist offline  
Alt 05.04.2005, 13:39  
Gast
 
Beiträge: n/a
Standard

@ robo47:
1. vielen dank! das mit der formatierung tut mir leid, ich hab aus versehene die bbcodes ausgeschalten, deshalb haben meine versuche nicht hingehauen.
2. hab ich mir durchgelesen, werd ich dann auch umsetzen, hoffentlich krieg ich des hin
3. ich hab ein id feld mit auto_increment in der db, reciht das?
4. die struktur:
Code:
id  int(11)  UNSIGNED Nein    auto_increment              
name  varchar(255)   Ja  NULL                
upload_date  date   Ja  NULL                
path  varchar(255)   Ja  NULL                
title  varchar(255)   Ja  NULL                
beschreibung  text   Ja  NULL                
bildname  varchar(255)   Ja  NULL    //NEU
5. hört sich sehr sinnvol an, wie schaffe ich dann die verknüpfung bei der speicherung und der abfrage der bilder inkl. zugehörigem text?


@JEGO
danke für deine hilfe, hab das mal versucht umzusetzen, schaut auch schon a bisserl gut aus :wink:
bringt keine fehlermeldung, aber es wird noch nichts in die db reingeschrieben.... die bilder werden aber beide hochgeladen, das passt.


PHP-Code:
<?php
// check for fileupload
if($_POST['submit'] && $fname && $fname!="none") {
// copy file
// fname ist name der datei MIT pfad
$type substr(strrchr($fname_name,"."),1);
$size $fname_size 1024;
if(
$size 1)
    
$size 1;
$path "../files/";

if(
file_exists($path.$fname_name))
 
unlink($path.$fname_name);
copy($fname$path.$fname_name);

if(
$_POST['submit'] && $fname && $fname!="none"

// connect database
$db1 = new db;
$db1->connect();

$typ=substr(strrchr($_FILES['bildfile']['name'], '.'), 1);

if(
$_FILES['bildfile']['name']!="")
   { 
//wenn eine file übermittelt wurde
   
$_FILES['bildfile']['name']= time().".".$typ//nehme aktuelle zeit als filename
   
$bildname $_FILES['bildfile']['name'];
   }

if (
move_uploaded_file($_FILES['bildfile']['tmp_name'], '../files/' $_FILES['bildfile']['name']))
  {
// create query
    
$sql "insert into fenster (name, path, title, beschreibung, bildname) values ('".$fname_name."','".$path."','".$fname_name."',,'".$bildname."'')";

   echo 
"<div align=\"center\">Das Bild wurde gespeichert!</div>"
  }


?>
das form:

PHP-Code:
<?php
// upload form

echo "<table width=\"100%\"  border=\"0\" cellpadding=\"3\" cellspacing=\"0\">\n";
echo 
"<tr><td colspan=\"3\">[b]Mitteilungen auf der fenster - Seite pflegen:[/b]</td></tr>";
echo 
"<tr><td colspan=\"3\"></td></tr>";
echo 
"<tr><td colspan=\"3\">Neues Bild hinzufügen</td></tr>";
echo 
"<tr><form enctype=\"multipart/form-data\" name=\"uplfrm\" method=\"post\" action=\"".$PHP_SELF."\">\n";
echo 
"<td colspan=\"2\"><input type=\"file\" name=\"fname\"></td>\n";
echo 
"<input name=\"bildfile\" type=\"file\" id=\"bildfile\" size=\"50\">\n"
echo 
"<td><input type=\"submit\" name=\"submit\" value=\"Bild hinzufügen\"></td></form></tr>\n";
echo 
"<tr><td colspan=\"3\"></td></tr>";

?>
 
Alt 05.04.2005, 13:52  
Gast
 
Beiträge: n/a
Standard

PHP-Code:
<?php
if (move_uploaded_file($_FILES['bildfile']['tmp_name'], '../files/' $_FILES['bildfile']['name']))
  {
// create query
   
$sql "insert into fenster (name, path, title, beschreibung, bildname) values ('".$fname_name."','".$path."','".$fname_name."',,'".$bildname."'')";

   echo 
"<div align=\"center\">Das Bild wurde gespeichert!</div>";
  }
?>
dir fehlt nach $sql noch eine zeile in dieser form:
PHP-Code:
$query mysql_query($sql) or die("ERROR: ".mysql_error()." IN query: ".$sql." in file: ".__FILE__." on line: ".__LINE__); 
 
Alt 05.04.2005, 14:11  
Gast
 
Beiträge: n/a
Standard

@maz
super, das funktioniert ja schon einwandfrei....vielen dank

jetzt hab ich nur noch ein klitzekleines problem:

wie mache ich die abfrage/ anzeige?

hier mein bisheriger aufruf:

PHP-Code:
<?php


        $sql 
"select * from fenster order by title";

        
$db->query($sql);

        
// zeige aktuelle beschreibungen mit Bild
        
while($data $db->getData()) {
            
$beschreibung $data['beschreibung'];
            echo 
"<tr><td><img src=\"files/".$data['name']."\" height=\"50\" width=\"50\"></td>\n";
            
            echo 
"<td>[b]".$data['title']."[/b]
 $beschreibung
</td>\n"
;
    
        }
        
$db->disconnect();

?>
wie bekomme ich das 2. bild da noch rein?
 
Alt 05.04.2005, 14:33  
Gast
 
Beiträge: n/a
Standard

? einfach ein <td><img src=...></td> nach dem 1. reingeben...
HTML solltest du ja doch kennen
 
Alt 05.04.2005, 14:38  
Gast
 
Beiträge: n/a
Standard

@ maz
danke, das war der schlag auf den hinterkopf, den ich gebraucht habe...

also für alle dies interessiert. so hab ichs gemacht:



PHP-Code:
<?php


        $sql 
"select * from fenster order by title";

        
$db->query($sql);

        
// zeige aktuelle beschreibungen mit Bild
        
while($data $db->getData()) {
            
$beschreibung $data['beschreibung'];
            echo 
"<tr><td><img src=\"files/".$data['name']."\" height=\"50\" width=\"50\"></td>\n";
            echo 
"<tr><td><img src=\"files/".$data['bildname']."\" height=\"50\" width=\"50\"></td>\n";
            echo 
"<td>[b]".$data['title']."[/b]
 $beschreibung
</td>\n"
;
    
        }
        
$db->disconnect();
    

?>
 
 


Themen-Optionen
Thema bewerten
Thema bewerten:

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

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Bilder werden als Text dargestellt. casacorupta PHP Tipps 2008 3 03.02.2008 18:07
JavaScript/PHP: qooxdoo 0.7.1 - Teil 1 : Eine Einführung Zergling-new Tutorials 6 25.01.2008 10:41
CSS - Bild im div container überlappt andere container Buschdieb HTML, Usability und Barrierefreiheit 13 19.07.2007 23:17
Bilder in Text platzieren, der aus einer Datenbank kommt Erecthoma2006 PHP Tipps 2006 7 18.09.2006 09:39
bilder uploaden und verkleinern PHP Tipps 2006 1 13.01.2006 00:28
CSS - Design (clear - Problem) HTML, Usability und Barrierefreiheit 7 21.12.2005 14:55
Text aus der DB verteilen PHP Tipps 2007 17 16.11.2005 12:04
Seite mit editierbarem Inhalt (Text u. Bilder) Werkler PHP Tipps 2005-2 10 08.09.2005 15:15
[Erledigt] Link PHP Tipps 2005-2 10 20.07.2005 21:28
[Erledigt] Bilder frei positionieren und von Text umfließen lassen. HTML, Usability und Barrierefreiheit 10 24.04.2005 00:05
[Erledigt] DIV´s wollen nicht wie ich das will :-) HTML, Usability und Barrierefreiheit 22 28.03.2005 18:36
forum text bilder anzeigen PHP Tipps 2004-2 2 02.12.2004 09:17
txt-Datei erstellen d-81 PHP Tipps 2004 12 11.08.2004 20:31
Welcher Provider? Will Bilder uploaden und verkleinern? PHP Tipps 2004 7 08.07.2004 16:56

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
php bild mit text versehen, bild mit text versehen php, datnbankstruktur zeigen, bilder mit text versehen und hochladen, php bilder mit text versehen, bilder mit text versehen php

Alle Zeitangaben in WEZ +2. Es ist jetzt 11:39 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum

Creative Commons License
Dieser Inhalt ist unter einer Creative Commons-Lizenz lizenziert.