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 ::

Einführung in XHTML, CSS und Webdesign

Einführung in XHTML, CSS und Webdesign 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

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

Thema geschlossen
 
Themen-Optionen Ansicht
  #1  
Alt 30.09.2012, 19:42:46
fab_t fab_t ist offline
Anfänger
 
Registriert seit: Sep 2012
Alter: 48
Beiträge: 4
php fotoupload in spezifischen Userordner

Hey!

Ich poste aus Verzweiflung mein Problem nun mal hier im Forum:

Bin ein Newbie und kann mir daher selbst nach etlichen Versuchen nicht mehr weiterhelfen...

Also ich möchte es Nutzern ermöglichen selbst Bilder für kleine buttons auf meiner Seite hochzuladen und diese sollen dann auf dem Server im Ordner "user_images" abgelegt werden. Jedoch sollen die Bilder nicht nur in den Hauptordner abgelegt werden, sondern sie sollen in einen Ordner der mit der user-id benannt ist abgelegt werden. Dieser ordner muss natürlich dann durch das Skript erstellt werden...und die Bilder (upload und späteres Thumbnail) sollen dann dort abgelegt werden.

Ich bekomme es einfach nicht hin ;-(

Des weiteren soll jedes Bild auch noch mit einer Nummer versehen werden, die mit dem button identisch ist. Auf der Seite befinden sich mehrere Buttons, damit ich diese dann später mit dem Bild verknüpfen kann, wäre es gut wenn ich eine Nummer oder sowas hätte. Hat jmd ne Lösung?

Hier mal das Skript:


PHP-Code:
<?php
include 'dbconfig.php';
page_protect();

$rs_settings mysql_query("select * from user where id='$_SESSION[user_id]'");
while (
$row_settings mysql_fetch_array($rs_settings));


error_reporting (E_ALL E_NOTICE);
session_start();
//only assign a new timestamp if the session variable is empty
if (!isset($_SESSION['user_id']) || strlen($_SESSION['user_id'])==0){
$_SESSION['user_id'] = mysql_query("select * from user where id='$_SESSION[user_id]'");         
//assign the timestamp to the session variable
$_SESSION['user_file_ext']= "";
}

$upload_dir "user_images/";
$upload_path $upload_dir;             
$large_image_prefix "Large_";         
$thumb_image_prefix "button_";            
$large_image_name $large_image_prefix.$_SESSION['user_id'];    
image (append the timestamp to the filename)
$thumb_image_name $thumb_image_prefix.$_SESSION['user_id'];     
image (append the timestamp to the filename)
$max_file "1";    // Maximum file size in MB
$max_width "";    // Max width allowed for the large image
$thumb_width "87"// Width of thumbnail image
$thumb_height "35";   // Height of thumbnail image
// Only one of these image types should be allowed for upload
$allowed_image_types =     
array(
'image/pjpeg'=>"jpg",'image/jpeg'=>"jpg",'image/jpg'=>"jpg",'image/png'=>"png",
'image/x-png'=>"png",'image/gif'=>"gif");
$allowed_image_ext array_unique($allowed_image_types); // do not change this
$image_ext "";    // initialise variable, do not change this.
foreach ($allowed_image_ext as $mime_type => $ext) {
$image_ext.= strtoupper($ext)." ";
}

function 
resizeImage($image,$width,$height,$scale) {
list(
$imagewidth$imageheight$imageType) = getimagesize($image);
$imageType image_type_to_mime_type($imageType);
$newImageWidth ceil($width $scale);
$newImageHeight ceil($height $scale);
$newImage imagecreatetruecolor($newImageWidth,$newImageHeight);
switch(
$imageType) {
case 
"image/gif":
$source=imagecreatefromgif($image); 
break;
case 
"image/pjpeg":
case 
"image/jpeg":
case 
"image/jpg":
$source=imagecreatefromjpeg($image); 
break;
case 
"image/png":
case 
"image/x-png":
$source=imagecreatefrompng($image); 
break;
}
imagecopyresampled($newImage,$source,0,0,0,0,$newImageWidth,$newImageHeight,
$width,$height);
switch(
$imageType) {
case 
"image/gif":
imagegif($newImage,$image); 
break;
case 
"image/pjpeg":
case 
"image/jpeg":
case 
"image/jpg":
imagejpeg($newImage,$image,90); 
break;
case 
"image/png":
case 
"image/x-png":
imagepng($newImage,$image);  
break;
}
chmod($image0777);
return 
$image;
}

function 
resizeThumbnailImage($thumb_image_name$image$width$height$start_width,   
$start_height$scale){
list(
$imagewidth$imageheight$imageType) = getimagesize($image);
$imageType image_type_to_mime_type($imageType);

$newImageWidth ceil($width $scale);
$newImageHeight ceil($height $scale);
$newImage imagecreatetruecolor($newImageWidth,$newImageHeight);
switch(
$imageType) {
case 
"image/gif":
$source=imagecreatefromgif($image); 
break;
case 
"image/pjpeg":
    case 
"image/jpeg":
    case 
"image/jpg":
        
$source=imagecreatefromjpeg($image); 
        break;
    case 
"image/png":
    case 
"image/x-png":
        
$source=imagecreatefrompng($image); 
        break;
}
imagecopyresampled($newImage,$source,0,0,$start_width,$start_height,$newImageWidth,
$newImageHeight,$width,$height);
switch(
$imageType) {
case 
"image/gif":
imagegif($newImage,$thumb_image_name); 
break;
case 
"image/pjpeg":
case 
"image/jpeg":
case 
"image/jpg":
imagejpeg($newImage,$thumb_image_name,90); 
break;
case 
"image/png":
case 
"image/x-png":
imagepng($newImage,$thumb_image_name);  
break;
}
chmod($thumb_image_name0777);
return 
$thumb_image_name;
}

function 
getHeight($image) {
$size getimagesize($image);
$height $size[1];
return 
$height;
}

function 
getWidth($image) {
$size getimagesize($image);
$width $size[0];
return 
$width;
}


$large_image_location $upload_path.$large_image_name.$_SESSION['user_file_ext'];
$thumb_image_location $upload_path.$thumb_image_name.$_SESSION['user_file_ext'];


if(!
is_dir($upload_dir)){
mkdir($upload_dir0777);
chmod($upload_dir0777);
}


if (
file_exists($large_image_location)){
 if(
file_exists($thumb_image_location)){
    
$thumb_photo_exists "<img
src=\""
.$upload_path.$thumb_image_name.$_SESSION['user_file_ext']."\" alt=\"Thumbnail   
Image\"/>"
;
}else{
 
$thumb_photo_exists "";
}
$large_photo_exists "<img  
src=\""
.$upload_path.$large_image_name.$_SESSION['user_file_ext']."\" alt=\"Large   
Image\"/>"
;
} else {
$large_photo_exists "";
$thumb_photo_exists "";
}

if (isset(
$_POST["upload"])) { 
//Get the file information
$userfile_name $_FILES['image']['name'];
$userfile_tmp $_FILES['image']['tmp_name'];
$userfile_size $_FILES['image']['size'];
$userfile_type $_FILES['image']['type'];
$filename basename($_FILES['image']['name']);
$file_ext strtolower(substr($filenamestrrpos($filename'.') + 1));

//Only process if the file is a JPG, PNG or GIF and below the allowed limit
if((!empty($_FILES["image"])) && ($_FILES['image']['error'] == 0)) {

    foreach (
$allowed_image_types as $mime_type => $ext) {
        
//loop through the specified image types and if they match the     
extension then break out
        
//everything is ok so go and check file size
        
if($file_ext==$ext && $userfile_type==$mime_type){
            
$error "";
            break;
        }else{
            
$error "Only <strong>".$image_ext."</strong> images accepted for upload<br />";
        }
    }
    
//check if the file size is above the allowed limit
    
if ($userfile_size > ($max_file*1048576)) {
        
$error.= "Images must be under ".$max_file."MB in size";
    }

}else{
    
$error"Select an image for upload";
}
//Everything is ok, so we can upload the image.
if (strlen($error)==0){

    if (isset(
$_FILES['image']['name'])){
        
//this file could now has an unknown file extension (we hope it's one of the ones set above!)
        
$large_image_location $large_image_location.".".$file_ext;
        
$thumb_image_location $thumb_image_location.".".$file_ext;

        
//put the file ext in the session so we know what file to look for once its uploaded
        
$_SESSION['user_file_ext']=".".$file_ext;

        
move_uploaded_file($userfile_tmp$large_image_location);
        
chmod($large_image_location0777);

        
$width getWidth($large_image_location);
        
$height getHeight($large_image_location);
        
//Scale the image if it is greater than the width set above
        
if ($width $max_width){
            
$scale $max_width/$width;
            
$uploaded resizeImage($large_image_location,$width,$height,$scale);
        }else{
            
$scale 1;
            
$uploaded resizeImage($large_image_location,$width,$height,$scale);
        }
        
//Delete the thumbnail file so the user can create a new one
        
if (file_exists($thumb_image_location)) {
            
unlink($thumb_image_location);
        }
    }
    
//Refresh the page to show the new uploaded image
    
header("location:".$_SERVER["PHP_SELF"]);
    exit();
}
?>

Wäre für Hilfe sehr dankbar, da ich weider mal komplett am verzweifeln bin! :(

Danke euch!
  #2  
Alt 01.10.2012, 08:59:20
Ckaos Ckaos ist offline
Member
 
Registriert seit: Nov 2007
Beiträge: 843
AW: php fotoupload in spezifischen Userordner

Hi
Zitat:
Wäre für Hilfe sehr dankbar, da ich weider mal komplett am verzweifeln bin! :(
Ich mags ja keinem unterstellen, aber... Du kopierst Code und verstehst ihn nicht
und scheinst auch ihn nicht verstehen zu wollen, sondern willst nur schnell dein Ergebnis!
Läuft hier nicht und da -> stackoverflow auch nicht.

Du verstehst ja nicht mal das
PHP-Code:
$_SESSION['user_id'] = mysql_query("select * from user where id='$_SESSION[user_id]'"); 
gegenüber
Code aus alter Beitrag
PHP-Code:
$result mysql_query("select * from users where id='$_SESSION[user_id]'"); 
erstmal dein Problem ist.

Bitte fang an PHP zu lernen oder such dir einen der es kann, so hat es für mich nur
den anschein alle helfenden auszunutzen.

mfg

CKaos
__________________
"Wenn die Leute Häuser so bauen würden, wie wir Programme schreiben, würde der erstbeste Specht unsere Zivilisation zerhacken."
In den allermeisten Fällen sitzt der Bug etwa 40 cm vor dem Monitor!
  #3  
Alt 01.10.2012, 11:53:17
fab_t fab_t ist offline
Anfänger
 
Registriert seit: Sep 2012
Alter: 48
Beiträge: 4
AW: php fotoupload in spezifischen Userordner

Morgen Ckaos!

Alsoooo...sorry dass du dich angegriffen fühlst, ABER...ich frage doch um Hilfe für spezifische Probleme, was ist daran so falsch?
Richtig ich bin kein Coder, sondern versuche mit learning by doing mit dem Ganzen warm zu werden, daher kann ich dir nicht jeden php schnipsel einzeln nennen...SORRY. Versuche halt eben Code für meinen Zweck zu tweaken, darf ich so etwa nicht lernen und freizeitlich arbeiten?

Und richtig, ich versuche mir auf mehreren Foren helfen zu lassen, seh ich nicht als Problem oder Ausnutzung an...ich möchte doch nur Hilfe!

Falls ich dann bei dir zum Thema Hilfe an der richtigen Stelle bin...und du php ja anscheinend komplett drauf hast, dann sei mir doch gerne behilflich, anstatt mich als Unwissenden direkt an den Pranger zu stellen.

Kannst mir gerne Fehler erläutern, weil dann kann ich das ja auch erst verstehen und daraus lernen!

Hoffe du bekommst das nun nicht in den falschen Hals...ist nicht böse gemeint oder als Angriff zu werten, ja?

freundlichen Gruß und DANKE
  #4  
Alt 01.10.2012, 13:45:00
Benutzerbild von vt1816
vt1816 vt1816 ist offline
Administrator
 
Registriert seit: Jul 2004
Beiträge: 3.707
AW: php fotoupload in spezifischen Userordner

Zitat:
Zitat von fab_t Beitrag anzeigen
[...]
Richtig ich bin kein Coder, sondern versuche mit learning by doing mit dem Ganzen warm zu werden, ...
1. Mögen wir hier kein Crossposting - wenn es nicht benannt wird.
2. Das nach einer Hilfestellung kein Feedback kommt.
3. Literatur und Nachschlagewerke, die Du kennen / mit denen Du arbeiten solltest:
  1. PHP Handbuch
  2. PHP Tutorial
  3. PHP FAQ
  4. PHP Kompendium
  5. MySQL Tutorial

und bis dahin:

[mod: closed]
__________________
Gruss vt1816
Erwarte nicht, dass sich jemand mehr Mühe mit der Antwort gibt als Du Dir mit der Frage.
. . . . . Feedback wäre wünschenswert

Ich werde keinen privaten 1:1 Support leisten, außer ich biete ihn ausdrücklich an.
Ansosnten gilt: Hilfe ausserhalb dieses Thread (PN, WhatsApp, Skype, Mail, ICQ, etc...) nur per Barzahlung oder Vorauskasse!

Wenn man sich selbst als "Noob" bezeichnet, sollte man die Finger davon lassen.
Wenn man gewillt ist daran etwas zu ändern, lernt man Grundlagen!
Thema geschlossen

Stichworte
imageupload, ordner, php, spezifischer


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen
Ansicht

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
PHP Tunnel lusitaz PHP für Fortgeschrittene und Experten 5 23.10.2006 14:41:33
PHP Mail, kommt nicht an darki777 PHP Grundlagen 2 30.08.2006 00:07:27
PHP Aktualisieren? Ben20 Off Topic Area 17 24.07.2003 17:46:26
werte aus anderer php datei includieren Silencer PHP für Fortgeschrittene und Experten 1 06.05.2003 07:59:56
Einführung in PHP und Datenbanken Lómion PHP für Fortgeschrittene und Experten 7 07.02.2002 14:47:29


Alle Zeitangaben in WEZ +2. Es ist jetzt 14:24:21 Uhr.


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


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