php-resource



Zurück   PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr > Entwicklung > PHP Developer Forum
 

Login

 
eingeloggt bleiben
star Jetzt registrieren   star Passwort vergessen
 

 

 


PHP Developer Forum Hier habt ihr die Möglichkeit, eure Skriptprobleme mit anderen Anwendern zu diskutieren. Seid so fair und beantwortet auch Fragen von anderen Anwendern. Dieses Forum ist sowohl für ANFÄNGER als auch für PHP-Profis! Fragen zu Laravel, YII oder anderen PHP-Frameworks.

Antwort
 
LinkBack Themen-Optionen Thema bewerten
  #31 (permalink)  
Alt 01-07-2009, 23:51
unset
  Moderator
Links : Onlinestatus : unset ist offline
Registriert seit: Jan 2007
Ort: Düsseldorf
Beiträge: 3.782
unset befindet sich auf einem aufstrebenden Ast
Standard

Ich wollt's grade editieren. Das war mein Fehler. Da hab ich mal nur quergelesen und das "throw" im falschen Block gesehen :-) Trotzdem: Lies den von mir verlinkten Artikel. Verstehe, was Exceptions machen!
Mit Zitat antworten
  #32 (permalink)  
Alt 01-07-2009, 23:58
phpMorpheus2
 Registrierter Benutzer
Links : Onlinestatus : phpMorpheus2 ist offline
Registriert seit: Apr 2007
Beiträge: 646
Blog-Einträge: 2
phpMorpheus2 ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Zitat:
Zitat von unset Beitrag anzeigen
Ich wollt's grade editieren. Das war mein Fehler. Da hab ich mal nur quergelesen und das "throw" im falschen Block gesehen :-) Trotzdem: Lies den von mir verlinkten Artikel. Verstehe, was Exceptions machen!
Danke
Den Artikel hatte ich damals bereits gelesen.
Lese aber gerne. Also ran da
Mit Zitat antworten
  #33 (permalink)  
Alt 02-07-2009, 00:09
phpMorpheus2
 Registrierter Benutzer
Links : Onlinestatus : phpMorpheus2 ist offline
Registriert seit: Apr 2007
Beiträge: 646
Blog-Einträge: 2
phpMorpheus2 ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Sitzt der "fänger" jedoch nicht in der immer aktiven index.php, sondern in den einzelnen ActionView wie profil.php,
so muss für jede ActionView das ExceptionCatch Gerüst zum größten Teil kopiert werden..

Dazu: Gibt es auch eine Art Exception für Erfolgreiche vorgänge?
Jedoch mit additionsfunktion?
Sodass nicht direkt in den catch gesprungen, sondern gesammelt wird?
Ich benutze dafür eine seperate Klasse bislang.
Mit Zitat antworten
  #34 (permalink)  
Alt 02-07-2009, 00:11
Benutzerbild von onemorenerd onemorenerd
  Moderator
Links : Onlinestatus : onemorenerd ist offline
Registriert seit: Mar 2005
Ort: Berlin
Beiträge: 9.471
onemorenerd wird schon bald berühmt werdenonemorenerd wird schon bald berühmt werden
Standard

Wofür benutzt du deine separate Klasse? Gib mal ein echtes Beispiel.
Mit Zitat antworten
  #35 (permalink)  
Alt 02-07-2009, 00:18
phpMorpheus2
 Registrierter Benutzer
Links : Onlinestatus : phpMorpheus2 ist offline
Registriert seit: Apr 2007
Beiträge: 646
Blog-Einträge: 2
phpMorpheus2 ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Zitat:
Zitat von onemorenerd Beitrag anzeigen
Wofür benutzt du deine separate Klasse? Gib mal ein echtes Beispiel.
Entschulding. Natürlich.

Also wenn z.B. ein User ein Bild uploaded, so bekommt er die positive Meldung, das es gespeichert wurde.
Hat er das Bild nun als Profilfoto upgeloaded, so bekommt er die positive Meldung, dass das bild gespeichert wurde UND in der selben Meldung darunter noch die Zusatzvermerkung, dass es nun als Profilfoto gespeichert wurde.

Bei jedem Erfolgreichem Durchlauf der Aktionen speichern bestimmte Klassenmdethoden positive Meldungen, welche der User Empfangen soll.
Diese addieren sich ggf. (falls mehrere mal vorhanden sind, was auch vorkommt!) und werden wie gesagt zusammen ausgegeben.
Mit Zitat antworten
  #36 (permalink)  
Alt 02-07-2009, 00:37
Benutzerbild von onemorenerd onemorenerd
  Moderator
Links : Onlinestatus : onemorenerd ist offline
Registriert seit: Mar 2005
Ort: Berlin
Beiträge: 9.471
onemorenerd wird schon bald berühmt werdenonemorenerd wird schon bald berühmt werden
Standard

Das sind keine Ausnahmen. Es ist nichts unvorhergesehenes passiert, so dass das Programm nicht weiter machen kann.
Das sind einfache Mitteilungen an den Benutzer.

Wenn man schön EVA macht, kann man während des E und V alle Meldungen sammeln und beim A anzeigen.
Dir dient die separate Klasse als Körbchen zum Sammeln. Super.
Aber wo erzeugst du die Ausgabe? Laut Bild in der class.user.php und das ist Mist.

Ich bin jetzt gedanklich wieder da, wo ich schon vor vielen Beiträgen war: class.user.php ist ein Model und als solches hat es keine Ausgaben zu machen.
Das letzte Mal hatte ich dazu einen Link zum Exceptions-Manual gegeben. Von Formularen und Validierung war in dem Bild nämlich nichts zu sehen.


Ich denke wir sollten uns nicht weiter an deinem Bild festhalten. Mach mal hübsches UML draus, dann verstehen wir uns besser.

Geändert von onemorenerd (02-07-2009 um 00:41 Uhr)
Mit Zitat antworten
  #37 (permalink)  
Alt 02-07-2009, 00:46
phpMorpheus2
 Registrierter Benutzer
Links : Onlinestatus : phpMorpheus2 ist offline
Registriert seit: Apr 2007
Beiträge: 646
Blog-Einträge: 2
phpMorpheus2 ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Nein.
Also die Ausgabe findet in der Action/view statt.
Also in der profil.php und nicht in der class.

Eine Klasse darf höchstens eine Nachticht zum sammeln abgeben, gezeigt wird aber von der view aus.

Zu den Exceptions:
EDIT: Man braucht garnicht vererben.
Das finde ich super.

Geändert von phpMorpheus2 (02-07-2009 um 00:57 Uhr)
Mit Zitat antworten
  #38 (permalink)  
Alt 02-07-2009, 01:33
phpMorpheus2
 Registrierter Benutzer
Links : Onlinestatus : phpMorpheus2 ist offline
Registriert seit: Apr 2007
Beiträge: 646
Blog-Einträge: 2
phpMorpheus2 ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Zitat:
Zitat von onemorenerd Beitrag anzeigen
Das sind keine Ausnahmen. Es ist nichts unvorhergesehenes passiert, so dass das Programm nicht weiter machen kann.
Ist es denn auch "untersagt",
eine Exception zu werfen und auszugeben,
wenn z.B. der User ein Feld im Formular falsch oder garnicht ausgefüllt hat?
Das ist zwar "unerwartet", aber ich glaube nicht das es Status für eine Exception kriegt, oder doch?

Ich würde bei einer mehrfachvalidierung von z.B. Feldern eine extra Exception Klasse bauen welche
die Fehler nach und nach aufnimmt und zum schluss würde ich eine richtige Exception werfen welche
die Array der Fehler mitbekommt. ?!

Geändert von phpMorpheus2 (02-07-2009 um 01:58 Uhr)
Mit Zitat antworten
  #39 (permalink)  
Alt 02-07-2009, 02:59
Benutzerbild von onemorenerd onemorenerd
  Moderator
Links : Onlinestatus : onemorenerd ist offline
Registriert seit: Mar 2005
Ort: Berlin
Beiträge: 9.471
onemorenerd wird schon bald berühmt werdenonemorenerd wird schon bald berühmt werden
Standard

Untersagt ist es nicht, aber unschön. Was genau erhoffst du dir davon? Wo siehst du einen Vorteil?
Ich sehe zumindest einen Nachteil: Das
Zitat:
eine extra Exception Klasse bauen welche die Fehler nach und nach aufnimmt und zum schluss würde ich eine richtige Exception werfen welche die Array der Fehler mitbekommt
wird Gemurkse. Du musst ja stets zwischen Fehlermeldungen und echten Ausnahmen unterscheiden. Und zwar nicht nur in dem Catcher, der die Fehlermeldungen sammeln soll, sondern auch in jedem catch(Exception $e) zwischen throw und diesem. Das blickt am Ende keiner mehr.
Außerdem zwingt es dich, die Validatoren so atomar wie möglich zu machen. Jeder darf nur einen Test machen. Denn schlägt der fehl, wirfst du eine Exception, landest im Catcher und kannst nicht wieder zur Validierung "zurück springen". Um weitere Tests auszuführen muss die ganze Validierung irgendwie vom Catcher aus gesteuert werden ... da stellen sich bei mir die Nackenhaare auf!
Mit Zitat antworten
  #40 (permalink)  
Alt 02-07-2009, 03:11
phpMorpheus2
 Registrierter Benutzer
Links : Onlinestatus : phpMorpheus2 ist offline
Registriert seit: Apr 2007
Beiträge: 646
Blog-Einträge: 2
phpMorpheus2 ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Ja, ich habe nun versucht in einem Kopie meines Projektes die Exceptions einzubauen und ich hab grad echt keine Lust mehr, das ist Kraut mit Rüben geworden. Da geht garnichts mehr.

Da arbeite ich lieber wieder ohne Exceptions, weil ich einfach die Rückgabewerte jeder Funktion benötige.

Mit Exceptions ist das nicht gegeben und vor allem ist es nervig dauernd im catcher zu landen.

Da mach ich mir nicht die Mühe, nun auchnoch zwischen Fehlermeldungen zu unterscheiden ob nun positiv, nagativ, neutral und wenn ja, als exception oder nicht und wenn als exception, wo kommt der block hin und was muss und soll alles im Try stehen.

Da hab ich am Ende mehr Arbeit mit. Nö nö
Darum habe ich immer die Finger von Exceptions gelassen.

Vll. in nem andern Quartal nochmal versuchen.
Mit Zitat antworten
Antwort

Lesezeichen


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

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Mehrfachvererbung? webdepp PHP Developer Forum 5 18-04-2009 18:42
[OOP] Class not found 8 extends ) GELight PHP Developer Forum 9 20-09-2008 22:47
oop class extends vererbung / referenz Ichier PHP Developer Forum 20 01-11-2007 14:22
Klassen ohne extends verknüpfen (PHP 4) Kathal PHP Developer Forum 16 12-06-2007 10:36
[OOP] double extends? BloodReaver PHP Developer Forum 3 15-07-2004 17:10

Themen-Optionen
Thema bewerten
Thema bewerten:

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 an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an


PHP News

ebiz-trader 7.5.0 mit PHP7 Unterstützung veröffentlicht
ebiz-trader 7.5.0 mit PHP7 Unterstützung veröffentlichtDie bekannte Marktplatzsoftware ebiz-trader ist in der Version 7.5.0 veröffentlicht worden.

28.05.2018 | Berni

Wissensbestand in Unternehmen
Wissensbestand in UnternehmenLebenslanges Lernen und Weiterbilden sichert Wissensbestand in Unternehmen

25.05.2018 | Berni


 

Aktuelle PHP Scripte

PHP Server Monitor

PHP Server Monitor ist ein Skript, das prüft, ob Ihre Websites und Server betriebsbereit sind.

11.09.2018 Berni | Kategorie: PHP/ Security
PHP WEB STATISTIK ansehen PHP WEB STATISTIK

Die PHP Web Statistik bietet Ihnen ein einfach zu konfigurierendes Script zur Aufzeichnung und grafischen und textuellen Auswertung der Besuchern Ihrer Webseite. Folgende zeitlichen Module sind verfügbar: Jahr, Monat, Tag, Wochentag, Stunde Folgende son

28.08.2018 phpwebstat | Kategorie: PHP/ Counter
Affilinator - Affilinet XML Produktlisten Skript

Die Affilinator Affilinet XML Edition ist ein vollautomatisches Skript zum einlesen und darstellen der Affili.net (Partnerprogramm Netzwerk) Produktlisten und Produktdaten. Im Grunde gibt der Webmaster seine Affilinet PartnerID ein und hat dann unmittelb

27.08.2018 freefrank@ | Kategorie: PHP/ Partnerprogramme
 Alle PHP Scripte anzeigen

Alle Zeitangaben in WEZ +2. Es ist jetzt 16:01 Uhr.