php.de

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

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 31.10.2009, 12:52  
Erfahrener Benutzer
 
Benutzerbild von litterauspirna
 
Registriert seit: 24.04.2008
Beiträge: 3.172
PHP-Kenntnisse:
Anfänger
litterauspirna sorgt für eine eindrucksvolle Atmosphärelitterauspirna sorgt für eine eindrucksvolle Atmosphäre
litterauspirna eine Nachricht über ICQ schicken
Standard [Erledigt] undefined variable-Problem beim Erstellen einer Thumbnail-Klasse

Hallo Leute,

ich hoffe mal der Threadtitel ist gut so, wusste keinen besseren dafür.

Also ich will mir meine eigentliche Thumbnailfunktion die prozedural geschrieben ist nun als eine Klasse erstellen. Komme auch soweit gut voran, nur habe ich nun ein Problem was ich so über nicht mehr nachvollziehen kann.

Ich bekomme local folgende Fehlermeldung

Zitat:
Notice: Undefined variable: new_height in C:\xampp\htdocs\ooptests\thumbnail.class.php on line 128
Auf dem Webspace kommt die nicht da fehlt nur der Wert.

Hier mal meine Klasse.

PHP-Code:
<?php
class Thumbnail{
 
 public 
$img//in der varibalen werden die originalbildmaße gespeichert
 
public $max_size//größe auf die, die thumbs generiert werden sollten
 
public $thumb_order "thumbs"//ordnername in dem die thumbs abgelegt werden
 
private $thumb_name//name des verkleinerten bildes
 
private $height//hoehe des originalen bildes
 
private $witdh//breite des originalen bildes
 
private $new_height//hoehe des neuen bildes
 
private $new_witdh//breite des neuen bildes
 
private $type//bildatentyp
 
private $size//speichervariable für bildinformationen
 
private $thumbnail//neues leeres bild
 
private $new_image//altes bild wir auf neues kopiert
 
public $thumb//name des neuen thumbs
 
 /*
 *
 * constructor
 *
 */
 
public function __construct($img,$max_size,$thumb_order,$thumb_name){
 
  
$this->img $img;
 
  
$size getimagesize($this->img);
 
  
$this->width $size[0];
  
$this->height $size[1];
  
$this->type $size[2];
 
  
$this->max_size $max_size;
  
$this->thumb_order $thumb_order;
  
$this->thumb_name $thumb_name;
 }
 
 
/*
 *
 * breite des originalbildes zurückgeben
 *
 */
 
public function GetImageWidth(){
 
  return 
$this->width;
 }
 
 
/*
 *
 * höhe des originalbildes zurückgeben
 *
 */
 
public function GetImageHeight(){
 
  return 
$this->height;
 }
 
 
/*
 *
 * Bildatentyp zurückgeben
 *
 */
 
public function GetImageType(){
 
  return 
$this->type;
 }
 
 
/*
 *
 * berechnen eines rechenfaktors für neue bildmaße
 *
 */
 
public function SetCalculateFaktor(){
 
  
$faktor $this->GetImageWidth() / $this->GetImageHeight();
 
  return 
$faktor;
 }
 
 
/*
 *
 * berechnen der neuen bildbreite
 *
 */
 
public function SetCalculateNewImageWidth(){
 
  if(
$this->GetImageWidth() > $this->max_size){
 
   
//neue breite berechnen
   
if($this->SetCalculateFaktor() < 1){
 
    
$new_width $this->max_size $this->SetCalculateFaktor();
    
$new_height $this->max_size;
   }
  }
 
  return 
$new_width;
 }
 
 
/*
 *
 * berechnen einer neuen bildhöhe
 *
 */
 
public function SetCalculateNewImageHeight(){
 
  if(
$this->GetImageHeight() > $this->max_size){
 
   if(
$this->SetCalculateFaktor() >= 1){
 
    
$new_height $this->max_size $this->SetCalculateFaktor();
    
$new_width $this->max_size;
   }
  }
 
  return 
$new_height;
 }
}
?>
Und hier die Testausgaben dazu.

PHP-Code:
<?php
error_reporting
(E_ALL);
ini_set('display_errors',1);
//einbinden der klasse
require_once('thumbnail.class.php');
$bild "admin_litter.JPG";
$img "http://www.php.de/images/admin_litter.JPG";
$thumb_order "thumbs";
$max_size ="100";
$thumb_name ="thumb_".$bild;
//aufrufen der klasse
$thumb = new Thumbnail($img,$max_size,$thumb_order,$thumb_name);
echo 
'Origianlebreite - '.$thumb->GetImageWidth().' (aus getimagesize)';
echo 
'<br /><br />';
echo 
'Originalhöhe - '.$thumb->GetImageHeight().' (aus getimagesize)';
echo 
'<br /><br />';
echo 
'Bildtype - '.$thumb->GetImageType().' (aus getimagesize)';
echo 
'<br /><br />';
echo 
'Größe auf die das Bild skaliert werden soll - '.$max_size;
echo 
'<br /><br />';
echo 
'Brechnungsfaktor - '.$thumb->SetCalculateFaktor();
echo 
'<br /><br />';
echo 
'Neue Breite - '.$thumb->SetCalculateNewImageWidth();
echo 
'<br /><br />';
echo 
'Neue Höhe - '.$thumb->SetCalculateNewImageHeight();
//echo $thumb->GetBuildNewImage();
echo '<br /><br />';
//echo $thumb->GetBuildNewImage();
?>
So und nun das Problem was mich plagt, aber ich nciht nachvollziehen kann. Die Variable $new_height; soll nicht da sein und das verstehe ich nicht, denn alle Werte die ich zu den Berechnungen brauche sind da und auch $new_width; die aus der Berechnung erzeugt wird ist da, nur $new_height nicht.

Könnt ihr mir verraten was da falsch läuft?

Hier könnt Ihr die Testausgaben sehen, da fehlt bei $new_height; der Wert.

http://www.lit-web.de/thumbnail_class/

Vielen Dank für eure Hilfe Mfg litter
__________________
Aus dem Dynamo Lande kommen wir. Trinken immer reichlich kühles Bier. Und dann sind wir alle voll, die Stimmung ist so toll. Aus dem Dynamo Lande kommen wir.
http://www.lit-web.de
litterauspirna ist offline  
Sponsor Mitteilung
PHP Code Flüsterer

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

Alt 31.10.2009, 13:06  
Erfahrener Benutzer
 
Registriert seit: 16.07.2005
Beiträge: 1.007
PHP-Kenntnisse:
Fortgeschritten
brian johnson befindet sich auf einem aufstrebenden Ast
Standard

PHP-Code:
private $witdh//breite des originalen bildes

 
public function GetImageWidth(){
 
  return 
$this->width;
 } 
fällt was auf?

PHP-Code:
 return $new_height;

 private 
$new_height//hoehe des neuen bildes
 
private $new_witdh//breite des neuen bildes 
du möchtest instanzvariablen? nimm $this->blabla
__________________
PHP4?!?>>>Aktuelle PHP Version: 5.2.11 || 5.3.0
Suse 11.2 *vorfreude*
brian johnson ist offline  
Alt 31.10.2009, 13:16  
Erfahrener Benutzer
 
Benutzerbild von litterauspirna
 
Registriert seit: 24.04.2008
Beiträge: 3.172
PHP-Kenntnisse:
Anfänger
litterauspirna sorgt für eine eindrucksvolle Atmosphärelitterauspirna sorgt für eine eindrucksvolle Atmosphäre
litterauspirna eine Nachricht über ICQ schicken
Standard

Naja so richtig kapiere ich das trotzdem nicht, weil ja aber $new_width; auch da ist wie sie soll.
__________________
Aus dem Dynamo Lande kommen wir. Trinken immer reichlich kühles Bier. Und dann sind wir alle voll, die Stimmung ist so toll. Aus dem Dynamo Lande kommen wir.
http://www.lit-web.de
litterauspirna ist offline  
Alt 31.10.2009, 13:21  
Erfahrener Benutzer
 
Registriert seit: 28.05.2008
Beiträge: 2.094
PHP-Kenntnisse:
Fortgeschritten
rudygotya ist einfach richtig nettrudygotya ist einfach richtig nettrudygotya ist einfach richtig nettrudygotya ist einfach richtig nettrudygotya ist einfach richtig nett
Standard

witdh vs width
__________________
++++ Wieder einer ins Netz gegangen: Phishers Fritz zufrieden ++++
Blog
rudygotya ist gerade online  
Alt 31.10.2009, 13:40  
moderatives Dielektrikum
 
Benutzerbild von nikosch
 
Registriert seit: 21.05.2008
Beiträge: 35.989
PHP-Kenntnisse:
Fortgeschritten
nikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunft
Standard

Zitat:
ich hoffe mal der Threadtitel ist gut so, wusste keinen besseren dafür.
Jetzt ist er es.

Zitat:
Auf dem Webspace kommt die nicht da fehlt nur der Wert.
Sowas sagt eigentlich nie etwas über den Fehler, sondern stets über die eingestellte Fehlerdarstellung aus.

Bin jetzt zu faul zum Zählen, aber hier:
Zitat:
PHP-Code:
 public function SetCalculateNewImageHeight(){
 
  if(
$this->GetImageHeight() > $this->max_size){
 
   if(
$this->SetCalculateFaktor() >= 1){
 
    
$new_height $this->max_size $this->SetCalculateFaktor();
    
$new_width $this->max_size;
   }
  }
 
  return 
$new_height;
 } 
ist die Variable des Rückgabewerts abhängig von einer Bedingung. Unclever.
__________________
--
One pixel is still too big. Please make it smaller. ASAP.

Initiative Mittelstand.
Die wichtigste Gestaltungsregel im Screendesign ist Pi mal Daumen des Arbeitgebers.
--
nikosch ist gerade online  
Alt 31.10.2009, 13:49  
Erfahrener Benutzer
 
Benutzerbild von litterauspirna
 
Registriert seit: 24.04.2008
Beiträge: 3.172
PHP-Kenntnisse:
Anfänger
litterauspirna sorgt für eine eindrucksvolle Atmosphärelitterauspirna sorgt für eine eindrucksvolle Atmosphäre
litterauspirna eine Nachricht über ICQ schicken
Standard

Ja das habe ich schon beseitigt mittlerweile.
__________________
Aus dem Dynamo Lande kommen wir. Trinken immer reichlich kühles Bier. Und dann sind wir alle voll, die Stimmung ist so toll. Aus dem Dynamo Lande kommen wir.
http://www.lit-web.de
litterauspirna ist offline  
Alt 31.10.2009, 14:00  
Erfahrener Benutzer
 
Registriert seit: 16.07.2005
Beiträge: 1.007
PHP-Kenntnisse:
Fortgeschritten
brian johnson befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von litterauspirna Beitrag anzeigen
Ja das habe ich schon beseitigt mittlerweile.
welche ist denn die zeile 128?
__________________
PHP4?!?>>>Aktuelle PHP Version: 5.2.11 || 5.3.0
Suse 11.2 *vorfreude*
brian johnson ist offline  
Alt 31.10.2009, 14:01  
moderatives Dielektrikum
 
Benutzerbild von nikosch
 
Registriert seit: 21.05.2008
Beiträge: 35.989
PHP-Kenntnisse:
Fortgeschritten
nikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunft
Standard

Und was ist jetzt aktuell das Problem?
__________________
--
One pixel is still too big. Please make it smaller. ASAP.

Initiative Mittelstand.
Die wichtigste Gestaltungsregel im Screendesign ist Pi mal Daumen des Arbeitgebers.
--
nikosch ist gerade online  
Alt 31.10.2009, 14:02  
Erfahrener Benutzer
 
Benutzerbild von litterauspirna
 
Registriert seit: 24.04.2008
Beiträge: 3.172
PHP-Kenntnisse:
Anfänger
litterauspirna sorgt für eine eindrucksvolle Atmosphärelitterauspirna sorgt für eine eindrucksvolle Atmosphäre
litterauspirna eine Nachricht über ICQ schicken
Standard

Jetzt habe ich das besagte Problem nicht mehr. nun bin ich am überlegen das kopieren des neuen Bildes und so in der Klasse unter zu kriegen.
__________________
Aus dem Dynamo Lande kommen wir. Trinken immer reichlich kühles Bier. Und dann sind wir alle voll, die Stimmung ist so toll. Aus dem Dynamo Lande kommen wir.
http://www.lit-web.de
litterauspirna ist offline  
 


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
via "onclick" eine PHP Variable erstellen danielx11 PHP Tipps 2009 16 09.04.2009 11:31
Problem Mit Script, Variable wird nicht übernommen Moe PHP Tipps 2008 17 01.10.2008 16:12
Undefined variable Undefined property: block xxJJxx PHP Tipps 2008 16 05.08.2008 15:30
mehrdimensionales Array in Klasse erstellen Nixwisser PHP Tipps 2007 2 01.08.2007 14:30
Problem mit dem Hinzfügen von Tabellen durch Variable gameco PHP Tipps 2006 12 20.07.2006 12:44
Variable in einer Klasse definieren Simon9990 PHP Tipps 2006 5 01.02.2006 23:25
problem mit einer methode in einer klasse PHP Tipps 2007 4 18.12.2005 16:14
problem mit variable snatch-ic PHP Tipps 2007 5 13.12.2005 13:18
Thumbnail Klasse CrackPod PHP-Fortgeschrittene 14 13.09.2005 09:20
[Erledigt] Klon von Klasse intern erstellen - Referenzfehler? PHP-Fortgeschrittene 9 29.11.2004 16:03
Problem beim Registrieren von Session-Variablen in Klasse zwelch PHP-Fortgeschrittene 6 18.10.2004 08:07
Problem mit optionalen Parametern bei Funktion in Klasse RudiS PHP-Fortgeschrittene 6 24.09.2004 09:03
[Erledigt] Notice: Undefined variable und wie man das wegbekommt PHP-Fortgeschrittene 2 19.08.2004 11:50
Ordner per Skript erstellen --> Rechte Problem PHP Tipps 2004 2 06.07.2004 14:19
Variable einer Klasse PHP Tipps 2004 2 15.06.2004 16:26

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
function() class var undefined, $thumbnail width variabel, php class $this variable undefined, php thumbnail class, php bilder thumbnailklasse skalieren, undefined variable private php, rückgabewert undefined erstellen, private var undefined php, php undefined variable private class, php undefined variable class, nach return undefined variable, \undefined variable\ php class private, private php5 \undefined variable\, notice: undefined index: benutzername in c:\\xampp\\htdocs\\schule\\registrieren.php on line 9, php class public variable type, php undefined variable in klassen, php klassen notice: undefined variable: in, undefined variable class php, php public variable fehler, undefined index: thumbnail

Alle Zeitangaben in WEZ +2. Es ist jetzt 20:03 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