php-resource.de

PHP-resource.de - Die PHP / mySQL Community

Die wichtigsten Rahmenbedingungen für das Hosting

Die wichtigsten Rahmenbedingungen für das HostingGuter Webspace wird in der heutigen Zeit immer wichtiger. Die Scripte werden moderner und fordern höhere Leistung, der allgemeine Traffic im Internet nimmt zu.

17.08.2015 | Berni

PHP 7.0 Beta 1 veröffentlicht

PHP 7.0 Beta 1 veröffentlichtMit der PHP Version 7.0 b1 wurde die dritte Vorabversion der neuen PHP 7 Serie veröffentlicht.

17.07.2015 | Berni

Beiträge im PHP-Forum

Hacker Angriff?
it-security Autor : mermshaus Zeit : 23:48 Posts : 13

(Sorry, wird etwas offtopic/meta. Ich finde das Thema recht spannend.)

Ich stimme den Anmerkungen zu. Der Vollständigkeit halber noch ein, zwei Ergänzungen.

[quote=TBT]
1 

2         // Prüfung ob der array Index existiert fehlt
3         if( !empty( $_SESSION["answer"] ) ) {


[/quote]

Technisch gesehen prüft empty das selbst.

[quote]
1 

2             // warum einfache Stringvergleiche mit aufwenigen RegExp?
3             // diesen ganzen If Zweig kann man durch einfaches
4             //
5             // return in_array( strtolower( $answers ), explode( "|", strtolower( $_SESSION["answer"] ) ) );
6             //
7             // ersetzen


[/quote]

Die preg_match-Aufrufe im Originalcode sind nicht verankert (etwa per ^…$ oder – richtiger – \A…\z). Sie verhalten sich dadurch eher wie strpos als wie ==. Das ist aber wahrscheinlich gar nicht so gewünscht, und deine Variante wäre auch noch ein Bugfix.

[quote]
1 

2             // einfach "return $bool;" statt dem if/else
3             if( $bool == true ) {
4 
5                 return true;
6             } else {
7 
8                 return false;
9             }


[/quote]

[i]return (bool) $bool;[/i]

preg_match liefert einen Integer. :)

Im gesamten Code fehlen zudem noch einige Fehlerüberprüfungen, wenn man es eng sieht.



Funktional ist der Code wohl recht genau das hier:


 1 
class botstop_class
 2 {
 3     public function get_question($dataFile = 'answers_questions.php', $lang = 'de')
 4     {
 5         @session_start();
 6 
 7         require __DIR__ . '/' . $dataFile;
 8 
 9         $rand = rand(0, count($questions[$lang]) - 1);
10 
11         $_SESSION["answer"] = $answers[$lang][$rand];
12 
13         return $questions[$lang][$rand];
14     }
15 
16     public function is_correct($answer)
17     {
18         @session_start();
19 
20         if (empty($_SESSION["answer"])) {
21             echo "Please Activate Cookies to submit botstop!";
22             return false;
23         }
24 
25         return in_array(
26             strtolower($answer),
27             explode("|", strtolower($_SESSION["answer"]))
28         );
29     }
30 }




Die Klasse braucht im Grunde gar keinen Zustand zu halten (Instanzvariablen).

Um diese Kürze geht es mir, wenn ich sage, dass es sich nicht „lohnt“, das wirklich groß zu besprechen, weil es einfach sehr wenig tut. Da kann man irgendwie immer alles und nichts anmerken, und es wird etwas willkürlich, auf Basis welches Anspruchs man das tut.

Man könnte zum Beispiel kritisieren, dass der Code nicht prüft, ob eine Sprache vorhanden ist und ob $questions und $answers die gleiche Feld-Größe und die passenden Datentypen haben (oder überhaupt gesetzt sind). Zudem wird nicht geprüft, ob die Datei mit den Fragen und Antworten überhaupt existiert und lesbar ist. Dann ist die Fehlerunterdrückung mit @ natürlich nicht toll, und man sollte auch nicht einfach so auf $_SESSION zugreifen, sondern das besser irgendwie kapseln (um verdeckte Seiteneffekte zu vermeiden und um vielleicht die Werte einfach mit einem Namespace ($_SESSION['myproject']['antwort']) versehen zu können).

Aber das wäre dann sehr schnell ein völlig anderes Projekt und nicht mehr die kleine Lösung, die vermutlich für viele Anwender ausreicht, auch wenn sie nicht in dem Sinne „gut“ ist.

Andererseits ist konstruktive Kritik natürlich auch nicht verkehrt und oft sicherlich auch hilfreich.

Zeitabhängiges Öffnen einer Seite
php developer forum Autor : wahsaga Zeit : 13:40 Posts : 1

Stichwort: Cronjob

[Einzelauftrag] Tischreservierungssystem (Disco/Club)
apps und php script gesuche Autor : adp2 Zeit : 13:29 Posts : 1

Auch wenn die Frage schon länger her ist, vielleicht hilft es ja in Zukunft jemandem. Es gibt [URL="http://www.rented.de"]rented.de[/URL], die stellen ein Reservierungsystem für Discos und Clubs bereit mit dem Logen und Tische etc. gebucht werden können. Kostet allerdings eine Gebühr und ist kein kostenloses Script. Ich habe es allerdings im Einsatz und ist funktioniert sehr gut.
Viele Grüße

Replace funktioniert nicht
php developer forum Autor : h3ll Zeit : 13:26 Posts : 1

Verwende preg_replace_callback() statt preg_replace().

Bestellformular
php developer forum Autor : h3ll Zeit : 20:58 Posts : 13

Die Fehlermeldungen sagen doch eh alles. Warum liest du sie nicht?

Du greifst auf Array-Indexe zu, die nicht existieren.

Außerdem heißt es array() und nicht arrray().

Jobs für PHP-Entwickler / Freelancer

Aktuelle PHP Projektausschreibungen / Stellenangebote

Weitere Projektausschreibungen finden Sie hier

PHP-Scripte & PHP-Tutorials


 

Aktuelle PHP Scripte

kostenlose SSL- TLS- Zertifikate

Hier bekommt man kostenlose SSL/TLS Zertifikate

09.02.2016 Berni | Kategorie: WEBMASTER/ HOSTING
webSPELL 4

webSPELL ist ein umfangreiches und leicht zu konfigurierendes CMS speziell für gaming clans. Es enthält vielerlei Funktionen, wie z.B.: - Gästebuch mit Adminfunktion - Forum - Seiten- und Serverstatistik - Newsletter - Kalender-/Clanwarver - umfang

11.01.2016 bluetiger@ | Kategorie: PHP/ CMS
UliCMS ansehen UliCMS

UliCMS ist eine schlanke und benutzerfreundliche aber dennoch mächtige Alternative zu anderen Open Source CMS.

11.01.2016 derUli | Kategorie: PHP/ CMS
 Alle PHP Scripte anzeigen

PHP/MySQL Tutorials


 

Neuzugänge PHP MySQL Tutorials

plotting masters - a professional guide - Teil II

Grafische Interpolation und Bestapproximation von numerischen Wertepaaren: Wir wollen Punkte auf einer Zeichenebene über verschiedene Verfahren miteinander verbinden.

25.01.2015 EVAMasters | Kategorie: PHP
plotting masters - a professional guide - Teil I

Grafische Interpolation und Bestapproximation von numerischen Wertepaaren: Wir wollen Punkte auf einer Zeichenebene über verschiedene Verfahren miteinander verbinden.

25.01.2015 EVAMasters | Kategorie: PHP
Responsive Webdesign

Einstieg in Responsive Webdesign und Grids

26.05.2014 Berni | Kategorie: HTML5 & CSS3


 

ebiz-trader 6.0 - Das professionelle PHP Marktplatz Script

Berni | Kommentare 7 Kommentare | Neu | Script ansehen 31432 mal angesehen | Kategorie: PHP/ Anzeigenmarkt


thumb_ebiz-trader-startseite.jpeg Mit unserer Lösungen können Sie nahezu jeden B2B / B2C Marktplatz betreiben den Sie sich vorstellen können. Ganz egal ob Sie einen Automarktplatz, Immobilenportal oder einfach einen Anzeigenmarkt betreiben möchten. Mit ebiz-trader können Sie Ihre Anforder...

 Weitere Details zu Script
 Direkt zur Webseite

 


php-entwicklung

Welches CMS verwendet ihr für Eure Projekte.

An Content Management Systeme kommt man nicht vorbei, will man seinen Kunden eine einfache Möglichkeit schaffen, Content einzupflegen.

  •  
    TYPO 3
  •  
    Wordpress
  •  
    Typo Neos
  •  
    Drupal
  •  
    Joomla
  •  
    Contao
  •  
    Redaxo
  •  
    keines der genannten

 
Newsletter
Melden Sie sich jetzt zu unserem Newsletter an! Sie erhalten dann immer aktuelle Informationen rund um PHP und php-resource.de

Emailadresse :