Suche Bilderupload mit Textfunktion!

Felix Weber

Angesehenes Mitglied
Hallo!
Ich programiere zwar schon ein bissl mit PHP aber meine Schwester hat mich an meine Grenze gebracht!
sad.gif
sad.gif

Also für ihre kleine Homepage wollte sie ein bilderupload.!
Eigentlich ganz einfach, sie wollte aber, das auch ein text unter jedem Bild steht.

Also wenn ich das richtig verstanden habe wünscht sie sich soetwas:

Eine ihre freundinnen (Besucher) kann unter Angabe des Namens... und der e-mail ein Bild und einen text uploaden. Der wird dann auf einer bestimmten Url gezeigt! (Bild oben, Text darunter)
Wie kann ich soetwas realisieren?

Kann mir jemand helfen?

mfg felix
 
In dem Du das Bild mittels Script auf den Server lädst und die dazugehörigen Texte mit einer eindeutigen Id (sowie den Bildnamen selber) in eine Textdate oder eine Datenbank (z.Bsp.MySQL) schreibst. Von dort aus kannst Du die einzelnen Elemente auf der Seite auslesen und nach belieben darstellen.

Alternativ kann ich Dir auch noch diesen Link geben http://www.php-resource.de/scripte/browsesub/PHP/, dort findest Du viele CodeSchnipsel.

schöne Grüsse René
 
Hallo!

Wo soll der Script unter perunity.de denn sein!???



Also ich habe diesen Script der Dateien (Bilder) hochladet!
__________
<?php
$extlimit = "yes";
$limitedext = array(".gif",".jpg",".png",".jpeg");
$sizelimit = "yes";
$sizebytes = "100000"; //size in bytes
if($senden){
if($bilddatei!= "") {
if (($sizelimit == "yes") && ($bilddatei_size > $sizebytes)) {
echo "Die Bilddateiname ist zu gross, sie darf mamimal $sizebytes bytes sein.";
}
$ext = strrchr($bilddatei_name,'.');
if (($extlimit == "yes") && (!in_array($ext,$limitedext))) {
echo "Die Bilddateiname hat nicht die richtige Endung.";
}

elseif (file_exists("images/$bilddatei_name")) {
echo "Die Bilddateiname existiert bereits. Bitte aendere die Bilddateiname und versuche es nochmal.";
}

else{
copy($bilddatei,"images/".$bilddatei_name);

$newtext = stripslashes($newtext);
$newtext = ereg_replace("\r\n","<br>",$newtext);
$newtext = ereg_replace("\n","<br>",$newtext);

$filetxt = "images/".$bilddatei_name.".txt";

$datatxt = fopen($filetxt, "w");
fputs($datatxt, $newtext);
fclose($datatxt);

echo "<br>OK, die Datei ".$bilddatei_name." wurde erfolgreich hochgeladen.<br>";

echo "<br><img src=\"images/".$bilddatei_name."\" border=\"0\"><br>";
include "images/".$bilddatei_name.".txt";
echo "<br><br>";


}


} //ende von if($bilddatei!= "")
} // ende von if($senden)
// im form-tag muss unbedingt enctype="multipart/form-data" enthalten sein!
//



?>

<br>
<br>

<form name="mf" action="" method="post" enctype="multipart/form-data">
Bild:
<input type='file' name='bilddatei' value='durchsuchen'>
<br>
Text zum Bild: <br>
<textarea name="newtext" cols="52" rows="4" wrap="VIRTUAL"></textarea>
<br>
OK:
<input type='submit' name='senden' value='Bild hochladen'>
</form>

<br>
<br>
_____________________________________

Nun muss ich das so umstellen, dass man zusätzlich dann noch eine "fest"adresse bekommt wo ich das Bild mit dem text anzeigen lassen kann! Also für alle abrufbar ist!

Wie soll ich das anstellen?


mfg felix
 
willst du eine html-datei schreiben die dann diesen inhalt hat?


<a href="bildname">bildname.ext</a>


oder was meinst du?
 
Hallo!
Ja ich meine das die Daten (Foto,Bild) nacher als html (odere andere Formate) Seite ausgegeben werden mit einer festen Adreesse die angezeigt wird und dynamishc erzeugt wird!
Wie:
Dein bild und den text kanst du unter www.domain.de/012555.html abrufen!


mfg felix
 
if (!isset($_POST['save']))
{
echo 'speichernformular';
}
else
{
$content='<html><body><img src="'.$bilddatei_name.'"><br>'.$bilddatei_name.'</body></html>';
$file='images/'.$bilddatei_name.'.html';
$filehandler=fopen($file,"w+");
fwrite($filehandler,$content);
fclose($filehandler);
chmod($file, 0644);
echo 'File angelegt. Hier <a href="images/'.$bilddatei_name.'.html">ansehen</a>';
}
//endif-else ($_POST['save'])



SOWAS?

Hat bestimmt viele Fehler jetzt. Bitte korrigieren!
 
Hi!
Also ich habe jetzt den Script :
Aber der hat noch fehler die ich nicht finde:
Wer kann Helfen? Bitte!

__________________
<?php
$extlimit = "yes";
$limitedext = array(".gif",".jpg",".png",".jpeg");
$sizelimit = "yes";
$sizebytes = "100000"; //size in bytes
if($senden){
if($bilddatei!= "") {
if (($sizelimit == "yes") && ($bilddatei_size > $sizebytes)) {
echo "Die Bilddateiname ist zu gross, sie darf mamimal $sizebytes bytes sein.";
}
$ext = strrchr($bilddatei_name,'.');
if (($extlimit == "yes") && (!in_array($ext,$limitedext))) {
echo "Die Bilddateiname hat nicht die richtige Endung.";
}

elseif (file_exists("images/$bilddatei_name")) {
echo "Die Bilddateiname existiert bereits. Bitte aendere die Bilddateiname und versuche es nochmal.";
}

else{
copy($bilddatei,"images/".$bilddatei_name);

$newtext = stripslashes($newtext);
$newtext = ereg_replace("\r\n","<br>",$newtext);
$newtext = ereg_replace("\n","<br>",$newtext);

$filetxt = "images/".$bilddatei_name.".txt";

$datatxt = fopen($filetxt, "w");
fputs($datatxt, $newtext);
fclose($datatxt);

echo "<br>OK, die Datei ".$bilddatei_name." wurde erfolgreich hochgeladen.<br>";

echo "<br><img src=\"images/".$bilddatei_name."\" border=\"0\"><br>";
include "images/".$bilddatei_name.".txt";
echo "<br><br>";

if (!isset($_POST['save']))
{
echo 'speichernformular';
}
else
{
$content='<html><body><img src="'.$bilddatei_name.'"><br>'.$bilddatei_name.'</body></html>';
$file='images/'.$bilddatei_name.'.html';
$filehandler=fopen($file,"w+");
fwrite($filehandler,$content);
fclose($filehandler);
chmod($file, 0644);
echo 'File angelegt. Hier <a href="images/'.$bilddatei_name.'.html">ansehen</a>';
}
//endif-else ($_POST['save'])

}


} //ende von if($bilddatei!= "")
} // ende von if($senden)
// im form-tag muss unbedingt enctype="multipart/form-data" enthalten sein!
//



?>

<br>
<br>

<form name="mf" action="" method="post" enctype="multipart/form-data">
Bild:
<input type='file' name='bilddatei' value='durchsuchen'>
<br>
Text zum Bild: <br>
<textarea name="newtext" cols="52" rows="4" wrap="VIRTUAL"></textarea>
<br>
OK:
<input type='submit' name='senden' value='Bild hochladen'>
</form>

<br>
<br>
_____________________________________________

Die fehlermeldung lautet immer :

_________________
Warning: copy(images/page6.gif): failed to open stream: Permission denied in /var/www/web48/html/luckysms/bilder/bild.php on line 21

Warning: fopen(images/page6.gif.txt): failed to open stream: Permission denied in /var/www/web48/html/luckysms/bilder/bild.php on line 29

Warning: fputs(): supplied argument is not a valid stream resource in /var/www/web48/html/luckysms/bilder/bild.php on line 30

Warning: fclose(): supplied argument is not a valid stream resource in /var/www/web48/html/luckysms/bilder/bild.php on line 31

OK, die Datei page6.gif wurde erfolgreich hochgeladen.



Warning: main(images/page6.gif.txt): failed to open stream: No such file or directory in /var/www/web48/html/luckysms/bilder/bild.php on line 36

Warning: main(): Failed opening 'images/page6.gif.txt' for inclusion (include_path='.') in /var/www/web48/html/luckysms/bilder/bild.php on line 36


speichernformular

Bild:
Text zum Bild:

OK:

____________________________-

Wer kann helfen??

mfg Felix
 
Hallo!
Vielen , vielen Dank!
Das Problem hat sich gelöst!
Danke für eure Hilfe!!!

mfg Felix
biggrin.gif
 
QUOTE (Omnicron @ Mo 9.5.2005, 19:27) if (!isset($_POST['save']))
{

Benutze ich bei grösseren Uploads nicht mehr, denn wenn der User Reload klickt wird die ganze Kiste nochmal gepeichert, was nur unnötige Bandbreite und Serverkapazität verschwendet.
Statt dessen einer $_SESSION Variable einen Wert zuweisen und gleich nach dem 1. Speichern wieder zurück setzen.
Ist halt ein bisschen detailverliebt.
cool.gif
 
Zurück
Oben