phpbar.de logo

Mailinglisten-Archive

[php] [FAQ] Haeufig gestellte Fragen

[php] [FAQ] Haeufig gestellte Fragen

Kristian Koehntopp kris_(at)_koehntopp.de
Sun, 30 Jan 2000 19:02:44 +0100


Die FAQ zu dieser Newsgroup findet sich unter der URL

	http://www.koehntopp.de/php/

Sie enthaelt die nachstehend aufgefuehrten Fragen und deren
Antworten.


   #next
   
   Next Previous Contents
     _________________________________________________________________
   
                             de.comp.lang.php FAQ
                                       
© Copyright 2000 Kristan Köhntopp, kris_(at)_koehntopp.de Tobias Ratschiller,
tobias_(at)_dnet.it
     _________________________________________________________________
   
     $Id: faq.sgml,v 1.8 2000/01/26 18:53:48 kk Exp $
     $Id: about.sgml,v 1.5 2000/01/10 21:14:42 kk Exp $
     $Id: about.sgml,v 1.9 2000/01/26 18:53:52 kk Exp $
     $Id: arrays.sgml,v 1.4 2000/01/23 20:46:33 kk Exp $
     $Id: code.sgml,v 1.1 2000/01/23 21:58:31 kk Exp $
     $Id: databases.sgml,v 1.6 2000/01/26 22:32:58 kk Exp $
     $Id: datetime.sgml,v 1.4 2000/01/09 17:13:51 kk Exp $
     $Id: functions.sgml,v 1.4 2000/01/23 21:58:31 kk Exp $
     $Id: install.sgml,v 1.8 2000/01/26 22:32:59 kk Exp $
     $Id: mail.sgml,v 1.3 2000/01/09 12:54:38 tobias Exp $
     $Id: objects.sgml,v 1.4 2000/01/15 07:52:06 kk Exp $
     $Id: open_exec.sgml,v 1.10 2000/01/23 21:58:31 kk Exp $
     $Id: phpinterpreter.sgml,v 1.12 2000/01/26 22:32:59 kk Exp $
     $Id: phplib.sgml,v 1.5 2000/01/26 22:32:59 kk Exp $
     $Id: phpmyadmin.sgml,v 1.4 2000/01/22 16:38:16 tobias Exp $
     $Id: regexp.sgml,v 1.3 2000/01/09 17:13:51 kk Exp $
     $Id: scripts.sgml,v 1.1 2000/01/26 18:53:53 kk Exp $
     $Id: strings.sgml,v 1.6 2000/01/23 21:58:32 kk Exp $
     $Id: webserver.sgml,v 1.3 2000/01/26 22:32:59 kk Exp $
     _________________________________________________________________
   
1. Über diese FAQ

     * 1.1 Was ist das hier?
     * 1.2 Wo finde ich die aktuelle Version dieser FAQ?
     * 1.3 Wie ist die Charta dieser Newsgroup?
     * 1.4 Was ist PHP?
     * 1.5 Wo finde ich weitere Informationen über PHP?
     * 1.6 Soll ich Jobangebote in de.comp.lang.php posten?
       
2. Installation und Inbetriebnahme

     * 2.1 Was bedeutet LAMP, WAMP und so weiter?
     * 2.2 CGI PHP oder Modul?
     * 2.3 PHP-Scripte von Windows nach Unix portieren?
     * 2.4 PHP3 oder PHP4?
     * 2.5 Wie installiere ich PHP auf Suse Linux?
     * 2.6 Wie compiliere ich ein aktuelles PHP als Modul auf Linux mit
       Apache Server?
     * 2.7 Ich habe Probleme PHP3 selbst zu compilieren.
     * 2.8 Wie installiere ich PHP auf Unix mit Netscape Server?
     * 2.9 Wie installiere ich CGI-PHP auf einem Apache-Server?
     * 2.10 Wie installiere ich PHP auf Windows mit Apache Server?
     * 2.11 Was ist PHP/FI und wo kann ich es bekommen?
     * 2.12 Wie kann ich eine PHP-Präsentation auf CD brennen?
       
3. PHP Interpreter

     * 3.1 Welche Editoren sind für PHP geeignet?
     * 3.2 Zeitgesteuerte PHP-Scripte und "Shellscripte"
     * 3.3 Kann ich bitte mal ein Beispielprogramm sehen?
     * 3.4 Wie finde ich heraus, wie mein PHP-Interpreter konfiguriert
       ist?
     * 3.5 Wie kann ich auf Umgebungsvariablen zugreifen?
     * 3.6 Wie kann ich auf den HTTP-Request-Header zugreifen?
     * 3.7 Gibt es noch mehr interessante Variablen im Environment?
     * 3.8 Ich verwende PHP als Apache-Modul. Wie kann ich dies
       konfigurieren?
     * 3.9 Was genau bewirkt safe_mode und ist das sicher?
     * 3.10 "Fatal error: Maximum execution time exceeded"
     * 3.11 Was ist --enable-force-cgi-redirect? Warum enthält $PHP_SELF
       den Pfad zum CGI-Interpreter?
     * 3.12 Warum funktioniert set_time_limit() nicht wie angepriesen?
     * 3.13 Was ist das für ein _(at)_-Zeichen vor einigen Funktionsaufrufen?
       
4. Typen und Funktionen

     * 4.1 Wie schreibe ich eine Funktion mit einer variablen Anzahl von
       Argumenten?
     * 4.2 Wie schreibe ich ein Script, das beliebige Parameter
       verarbeitet?
     * 4.3 Variable Variablen
     * 4.4 Was ist der Unterschied zwischen isset() und einem Vergleich
       auf den Leerstring?
       
5. Stringfunktionen

     * 5.1 Was ist besser, print() oder echo?
     * 5.2 Wie zerlege ich einen String?
     * 5.3 Wie zerlege ich eine URL?
     * 5.4 Wie gebe ich eine Zahl formatiert aus?
     * 5.5 Wie kann ich Zeilenumbrüche in <br> umwandeln?
       
6. Reguläre Ausdrücke

     * 6.1 Wie kann ich mehr über reguläre Ausdrücke lernen?
     * 6.2 Soll ich ereg() oder preg() verwenden?
     * 6.3 Wie verwende ich die preg()-Funktionen?
       
7. Arrays und Arrayvariablen

     * 7.1 Wie kann ich ein Element an ein Array anfügen?
     * 7.2 Wie kann ich ein Array aufzählen?
     * 7.3 Wie kann man ein <select multiple> verarbeiten?
     * 7.4 Wie greife ich auf ein mehrdimensionales Array zu?
       
8. Klassen und Objekte

     * 8.1 Warum Klassen und Objekte benutzen?
     * 8.2 Wie definiere ich eine Klasse? Wie erzeuge ich ein Objekt?
     * 8.3 Was ist $this?
     * 8.4 Was ist extends? Was ist Vererbung?
     * 8.5 Was ist ein Konstruktor?
     * 8.6 Was sind polymorphe Funktionen? Kann ich sie simulieren?
     * 8.7 Wie kann ich Metainformationen über eine Klasse bekommen?
       
9. Dateifunktionen und Programmausführung

     * 9.1 Wie kann ich eine Datei auslesen?
     * 9.2 Wie kann ich ein externes Programm von PHP aus starten?
     * 9.3 Wie funktioniert Datei-Upload über HTML-Formulare?
     * 9.4 Wie realisiere ich einen Dateidownload mit PHP?
     * 9.5 Wie kann ich in einer Datei eine Zeile einfügen oder löschen?
     * 9.6 Wie kann ich einen Datei-Upload per FTP durchführen?
       
10. Datums- und Kalenderprobleme

     * 10.1 Wie kann ich das aktuelle Datum bekommen?
     * 10.2 Wie kann in ein deutsches Datum in MySQL-Format umwandeln
       (und umgekehrt)?
     * 10.3 Wie kann ich die Anzahl der Tage zwischen zwei Daten
       bestimmen?
     * 10.4 Wie kann ich das Datum des Vortages bestimmen? 
     * 10.5 Wieviel Tage hat der aktuelle Monat?
       
11. Mail lesen und schreiben

     * 11.1 Windows: Wie kann ich die Mailfunktion von PHP nutzen?
     * 11.2 Wie kann ich ein Attachment mit einer Mail versenden?
     * 11.3 Wie kann ich eine Mail effizient an sehr viele Empfänger
       versenden?
     * 11.4 Wie kann ich mit PHP Mail von einem POP3 oder IMAP-Server
       lesen?
       
12. Datenbanken

     * 12.1 Wie kann ich mehr über SQL lernen?
     * 12.2 Wieso kann ich mehrere, durch Semikolon getrennte Statements
       nicht ausführen?
     * 12.3 Ist es sinnvoll, Bilder in einer Datenbank abzulegen?
     * 12.4 Wie kann ich meine Datenbankperformance steigern?
     * 12.5 Wie kann ich bei (MySQL-)Datenbanken zwei Tabellen
       miteinander verknüpfen?
     * 12.6 Ich habe eine Tabelle mit n Einträgen und möchte auf jeder
       Seite m davon anzeigen.
     * 12.7 Was ist der Unterschied zwischen connect und pconnect?
     * 12.8 MySQL oder Postgres?
     * 12.9 Wie greife ich auf eine MySQL-Datenbank zu?
     * 12.10 "0 is not a MySQL result index"
     * 12.11 Windows: "Call to unsupported or undefined function:
       mysql_connect()"
     * 12.12 "Call to unsupported or undefined function: mysql_errno()"
     * 12.13 Wie kann ich eine CSV-Datei in MySQL importieren?
     * 12.14 Wie kann ich eine CSV-Datei aus MySQL exportieren?
     * 12.15 Wie kann ich die Datensätze der letzten 2 Wochen listen?
     * 12.16 Wie kann ich auf einen ODBC-Server (MSSQL, Access)
       zugreifen?
       
13. phpMyAdmin

     * 13.1 Was ist phpMyAdmin?
     * 13.2 Ich bin kein MySQL-Administrator. Wie kann ich phpMyAdmin nur
       für mich selbst installieren?
     * 13.3 Ich bin MySQL-Administrator und möchte ein Exemplar phpAdmin
       für alle meine User installieren.
     * 13.4 Wieso kann ich den Inhalt meiner Tabelle nicht editieren?
     * 13.5 Wieso werden TIMESTAMP-Felder nicht auf die aktuelle Zeit
       gesetzt, wenn ich eine neue Zeile einfüge?
     * 13.6 Wieso kann ich in phpMyAdmin mehrere durch Semikolon
       getrennte SQL-Statements ausführen, nicht aber mit normalen
       PHP-Funktionen?
       
14. PHPLIB

     * 14.1 Was ist PHPLIB?
     * 14.2 Wo kann ich PHPLIB bekommen?
     * 14.3 Mein Provider hat PHPLIB nicht installiert.
     * 14.4 Ich habe keinen Zugriff auf die php3.ini.
     * 14.5 "Oops, php3_SetCookie called after header has been sent!"
     * 14.6 Was schreibe ich denn nun in meine local.inc?
     * 14.7 ERROR 1146: Table 'xyz.active_sessions' doesn't exist!
     * 14.8 Internet Explorer: Meine Seiten werden nicht aktualisiert.
     * 14.9 Wie kann ich Reloads durch den User erkennen und verhindern?
       
15. Webserver und PHP

     * 15.1 Apache: Kann ich PHP auch auf .html-Dateien anwenden?
     * 15.2 Apache: Wie kann ich ein Verzeichnis mit einem Paßwort
       schützen?
     * 15.3 Apache: Wie kann ich ein Verzeichnis mit PHP mit einem
       Paßwort schützen?
     * 15.4 Kann ich mit CGI PHP ein Verzeichnis mit einem Paßwort
       schützen?
     * 15.5 Wie kann ich mit PHP die Bildschirmauflösung des Browsers
       herausfinden?
     * 15.6 Wie kann ich das Caching einer Seite verhindern?
     * 15.7 Wie verarbeite ich <input type=image?
     * 15.8 "Document contains no data"
       
16. Häufig nachgefragte Standardscripte

     * 16.1 Wie kann ich eine schummelsichere Abstimmung codieren?
     * 16.2 Wie kann ich einen HTTP POST-Request absenden?
       
17. Guter Code

     * 17.1 Trenne Aussehen und Inhalt.
     * 17.2 Vermeide globale Variablen.
     * 17.3 Schreibe wiederverwendbaren Code. Verwende Klassen und
       Objekte.
     * 17.4 Prüfe importierte Parameter. Traue niemandem.
     * 17.5 Schreibe Formularverarbeitungen in Normalform.
     _________________________________________________________________
   
   Next Previous Contents

   #next contents
   
   Next Previous Contents
     _________________________________________________________________
   
1. Über diese FAQ

1.1 Was ist das hier?

   Dies ist der monatliche Einführungsartikel für die Newsgruppe
   de.comp.lang.php. Er erklärt den Zweck der Newsgruppe, auf welche
   Weise man hier am einfachsten an sinnvolle Antworten kommt und dient
   als Sammlung von Antworten auf häufig gestellte Fragen in der Gruppe.
   
   Wenn Du Kommentare oder Vorschläge zu diesem Artikel hast oder wenn Du
   selber einige Abschnitte in diesen Artikel einbringen möchtest,
   wendest Du Dich am besten per Mail an den Urheber dieses Artikels,
   Kristian Köhntopp < kris_(at)_koehntopp.de>.
   
1.2 Wo finde ich die aktuelle Version dieser FAQ?

   Diese aktuelle Version dieser FAQ ist unter der URL
   http://www.koehntopp.de/php zu finden. Eine Version in einer einzigen
   Datei befindet sich unter der URL
   http://www.koehntopp.de/php/faq-single.html. Die Linuxdoc
   SGML-Quelltexte dieser FAQ sind unter der URL
   http://www.koehntopp.de/php/faq.tar.gz zu finden.
   
   Es existiert ein CVS-Archiv, aus dem die aktuelle Version der FAQ
   bezogen werden kann. Die CVSROOT dieses Archives ist
   :pserver:cvsread_(at)_phplib.netuse.de:/repository mit dem Paßwort cvsread.
   Das Modul heißt german-faq. Ein CVSWEB-Zugang zu dem Archiv ist unter
   http://phplib.netuse.de/cgi/cvsweb.cgi zu finden.
       ______________________________________________________________
     
$ cvs -d :pserver:cvsread_(at)_phplib.netuse.de:/repository login
Password: cvsread
$ cvs -d :pserver:cvsread_(at)_phplib.netuse.de:/repository checkout german-faq
...

# Aktualisieren der Version mit
$ cd german-faq
$ cvs -z9 update -dAP
       ______________________________________________________________
     
   Es gibt eine Mailingliste german-faq, die Nachrichten über Änderungen
   an der FAQ enthält und die man bestellen sollte, wenn man an der FAQ
   mitarbeiten möchte. Man kann die Mailingliste unter der Adresse
   german-faq-request_(at)_lists.netuse.de bestellen.
   
1.3 Wie ist die Charta dieser Newsgroup?

   Diese Newsgruppe richtet sich an alle Benutzer und Programmierer von
   PHP, einer Programmiersprache mit Schwerpunkt auf der Entwicklung von
   Webanwendungen. Es können alle Themen rund um PHP besprochen werden,
   seien es nun Probleme mit der Installation, der Anwendung oder
   Programmierung in PHP oder der Erweiterung des PHP- Interpreters
   selbst.
   
1.4 Was ist PHP?

   Die Abkürzung PHP steht offiziell für "PHP: Hypertext Preprocessor".
   Dies ist eine rekursive Abkürzung im Stile des GNU-Projektes. PHP ist
   eine Scriptsprache zur dynamischen Erstellung von Webseiten. Die
   Anweisungen der Sprache sind dabei in den HTML-Code einer Webseite
   eingebettet, d.h. jede HTML-Seite ist auch ein gültiges PHP-Programm.
   Die Syntax von PHP ist ähnlich wie die von C, Java oder Javascript.
   Die Sprache zeichnet sich vor allen Dingen durch ihre leichte
   Erlernbarkeit, ihre ausgezeichneten Datenbankanbindungen und
   Internet-Protokolleinbindungen und die Unterstützung zahlreicher
   weiterer Funktionsbibliotheken aus. PHP stellt so für den
   Web-Entwickler das ideale Werkzeug zur Erstellung von dynamischen
   Inhalten dar.
   
   PHP ist freie Software im Sinne der Debian Free Software Guidelines
   (DFSG). Quelltext und Binaries des PHP-Interpreters sind frei
   erhältlich und können für alle kommerziellen und nichtkommerziellen
   Zwecke eingesetzt werden; jeder kann den PHP-Quelltext
   weiterentwickeln und die Änderungen an das PHP-Projekt zurückfließen
   lassen. Der genaue Lizenztext ist in der Datei COPYING enthalten, der
   Bestandteil der PHP-Distribution ist.
   
   PHP läuft auf allen gängigen Unix-Versionen und auf den verschiedenen
   Windows-Versionen (Win95, 98 und NT). Als CGI-Programm kann PHP mit
   jedem Webserver zusammenarbeiten. Für einige Webserver, allen voran
   Apache, stehen auch Modulversionen zur Verfügung, die sehr viel
   effizienter ausgeführt werden.
   
   Die Homepage des PHP-Projektes ist http://www.php.net. Mirrors dieser
   Site sind in vielen Ländern vorhanden, unter anderem auch in
   Deutschland unter der URL http://www.php3.de oder http://de.php.net.
   Von dort kann man die jeweils aktuelle Releaseversion des Interpreters
   sowie Binaries für eine Reihe von Plattformen herunterladen. Ebenso
   finden sich dort das englische Handbuch sowie Archive der englischen
   Mailinglisten.
   
1.5 Wo finde ich weitere Informationen über PHP?

   Zu PHP gibt es zahlreiche Informationsquellen in deutscher und
   englischer Sprache.
   
  Deutsche Ressourcen im WWW
  
     * Artikel von Kristian Köhntopp
     * Dynamic Webpages
     * Jörg Baachs LAMP-Installationsanleitung
     * Martin Jansens PHP Seiten
     * PHP mit dem PWS (Windows Personal Web Server)
     * PHP-Center
     * Tutorials für PHP und MySQL
     * WAMP HowTo
       
  Internationale Ressourcen im WWW
  
     * PHP Homepage
     * Englische FAQ
     * Zend ist die PHP4 Scriping Engine
     * Annotated Online Manual
     * Berber's PHP3 Example Page
     * Devshed Developer Forum
     * PHP Classes Repository
     * PHP Knowledge Base
     * PHP Manual for Homesite
     * PHP3 Code Exchange
     * phpTidBits - Tutorials
     * phpWizard.net
       
  Bücher über PHP
  
   Ein Verzeichnis aller aktuellen Bücher findet man im Buchverzeichnis
   der englischen Website.
   
   In Deutsch: php -dynamische webauftritte professionell realisieren,
   Egon Schmid, Christian Cartus, Richard Blume; Markt und Technik
   Verlag.
   
   In Deutsch: PHP - Grundlagen und Lösungen, Webserver-Programmierung
   unter Windows und Linux, Jörg Krause; Carl Hanser Verlag.
   
   In Englisch: Core PHP Programming, Leon Atkinson; Prentice Hall.
   
   In Englisch: PHP3: Programming Browser-Based Applications, David
   Medinets; McGraw-Hill.
   
   In Englisch: Professional PHP, Jesus Castagnetto, Harish Rawat, Sascha
   Schuhmann, Chris Scollo, Deepak Veliath; Wrox Press.
   
   In Englisch: Building Database Applications on the Web Using PHP3,
   Craig Hilton, Jeff Willis, Bjorn Borud; Addison-Wesley.
   
  Fertige Anwendungen in PHP
  
   Ein Verzeichnis von Projekten, die PHP3 verwenden, findet man im
   Projektverzeichnis der offiziellen Homepage.
   
     * Phorum, ein Diskussionsforum.
     * phpSlash, ein Diskussionsforum.
     * IMP, ein Webmail Interface.
     * Bookmarker, eine Bookmark-Verwaltung.
     * PHPLIB, eine objektorientierte Bibliothek zur
       Anwendungsentwicklung.
     * phpMyAdmin, ein Managementsystem für MySQL-Datenbanken.
     * MyGuestbook, ein Gästebuch.
     * phpAds ein Verwaltungssystem für Banner Ads.
     * FishCartSQL, ein Shopping Cart.
       
1.6 Soll ich Jobangebote in de.comp.lang.php posten?

   Eine kurze Umfrage im Januar 2000 in de.comp.lang.php hat ergeben, daß
   Jobangebote in der Newsgroup toleriert werden, auch wenn sie nach
   Charta streng genommen off-topic sind, solange sie folgenden
   Ansprüchen an die äußere Form genügen:
   
     * Jobangebote sollen im Betrefftext des Artikels die Kennzeichnung
       [JOB] haben. Auf diese Weise sind sie leicht erkennbar und können
       von den Leuten, die sie nicht sehen wollen leicht unterdrückt
       werden, währen Sie von den Leuten, die einen Job suchen, leicht
       gefunden werden.
     * Jobangebote sollten mit der Headerzeile Followup-To: poster
       veröffentlicht werden. de.comp.lang.php nimmt die Veröffentlichung
       von Jobangeboten hin, ist aber nicht zur Diskussion über
       Jobangebote gedacht.
     * Jobangebote sollten nicht übermäßig oft veröffentlicht werden:
       Jeder Job sollte nur genau einmal angepriesen werden und
       Arbeitgeber mit ständigen oder wiederkehrenden Jobangeboten
       sollten nicht öfter als einmal im Monat veröffentlichen. Es hat
       keinen Sinn sich aufzudrängen und bei einem unbeliebten
       Arbeitgeber wird in der jetzigen Arbeitsmarksituation wohl kaum
       jemand anfangen.
     * Jobangebote sollten Netiquettekonform sein: Der Absendername soll
       eine Person ("Paul Arbeitgeber") und keine Funktion ("Personalbüro
       Arbeitgeber GmbH") sein. Die angegebene Mailadresse soll gültig
       sein. In Newsartikel soll kein HTML verwendet werden und Netscape
       Visitenkarten sollen nicht verwendet werden - Hochglanz-Blendwerk
       ist nett für das Marketing, aber wir sind R&D.
     * Jobangebote können in die formal korrekte Newsgroup
       de.markt.arbeit.biete crosspostet werden. Dann ist es doppelt
       wichtig, daß ein Followup-To: poster oder Followup-To:
       de.markt.arbeit.d gesetzt wird. de.comp.lang.php ist nicht zur
       Diskussion von Jobangeboten geeignet!
       
   Wenn Sie als Arbeitgeber nicht in der Lage sind, im USENET
   intelligent, kooperativ und regelkonform aufzutreten, sollten Sie
   andere Medien für ihre Personalaquise verwenden, die sich Ihnen
   leichter erschließen. Ihre Corporate Identity wird es Ihnen danken.
     _________________________________________________________________
   
   Next Previous Contents



php::bar PHP Wiki   -   Listenarchive