phpbar.de logo

Mailinglisten-Archive

[php] mysql_(p)connect

[php] mysql_(p)connect

Kristian =?iso-8859-1?Q?K=F6hntopp?= kk_(at)_netuse.de
Tue, 22 Jun 1999 11:35:44 +0200


Werner Stuerenburg wrote:
>       $link = mysql_pconnect($cfgServer['host'], $cfgServer['user'],
> $cfgServer['password']) or mysql_die();
> 
> Daraufhin habe ich die Funktion mysql_pconnect mit Telnet getestet:
> 
> tengu:~/www/cgi-bin$ mysql_pconnect(localhost, pferdezeitung,
> **********)
> bash: syntax error near unexpected token `mysql_pconnect(localhost,'

Bitte unterscheide zwischen

- UNIX Kommandozeilenbefehlen (etwa dem Kommando "mysql"), die Du
  auf dem Prompt tippst

- UNIX Bibliotheksfunktionen, die man in C verwenden kann, um
  UNIX Kommandozeilenbefehle zu schreiben (etwa mysql_connect()
  und mysql_real_connect(), wie sie im MySQL Reference Manual
  beschrieben sind)

- PHP Einbaufunktionen, die Bestandteil der Sprache PHP sind
  und die intern auf gleichnamige oder andersartige C-Funktionen
  zurückgreifen (mysql_connect() und mysql_pconnect(), wie sie
  im PHP Manual beschrieben sind).

> Diese Funktionen benutzt aber keiner, soweit ich das sehe. Ich muß
> gestehen, ich bin verwirrt. Diese Funktion ist recht komplex, schon
> der erste Parameter stellt mich vor Rätsel: mysql is a pointer to a
> MYSQL connection structure - was ist und wie bekomme ich das?

mysql_real_connect() ist im MySQL Reference Manual beschrieben und
ist eine Funktion der Programmiersprache C. Dort wird von C-Zeigern
und C-Strukturen geredet, die man nur in der Programmiersprache C
ansprechen kann. PHP ist in C geschrieben und verwendet intern solche
Zeiger und Strukturen, um intern mittels dieser Funktion eine Verbindung
zum Datenbankserver aufzubauen.

PHP stellt Dir die Funktionalität von mysql_real_connect() zur
Verfügung und zwar wahlweise mit leicht unterschiedlichen Eigenschaften
als die PHP-Funktionen mysql_connect() und mysql_pconnect(). Wenn
Du PHP programmierst, mußt Du die in der PHP-Dokumentation beschriebenen
Funktionen mysql_connect() und mysql_pconnect() verwenden und
auf die beschriebene Weise.

Du mußt diese Funktionen außerdem im Rahmen eines PHP-Programmes
verwenden (also in einer .php3-Datei, die Du abrufst) und kannst
sie nicht direkt auf einem UNIX-Kommandoprompt eintippen. Auf
einem UNIX-Kommandoprompt kannst Du nur UNIX-Kommandos eingeben.
Ein solches Programm ist das Programm "mysql", das ebenfalls
in C geschrieben ist und intern die C-Funktion mysql_real_connect()
verwendet, um eine Verbindung mit dem Mysql-Server aufzubauen.

Kristian

-- 
Kristian Köhntopp, NetUSE Kommunikationstechnologie GmbH
Siemenswall, D-24107 Kiel, Germany, +49 431 386 436 00
Using PHP3? See our web development library at
http://phplib.shonline.de/ (GPL)


php::bar PHP Wiki   -   Listenarchive