PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : PHP tut nicht richtig



Kapitaen
06.05.04, 05:46
Hallo!

Ich habe das Problem das seit ich Apache2 im Einsatz habe mit PHP das nicht mehr alle PHP-Skrpts laufen.

Wenn ich ein Skript ausführe mit Beispielsweise einer My-SQL-Verbindung dann bekomme ich:
Fatal error: Call to undefined function: mysql_connect() in /srv/www/htdocs/photoalbum/index.php on line 13

Ich habe PHP und MySQL via rpm-Paket von der Suse CD installiert (Suse 9.1) - ich denke das ich es anders konfigurieren muss damit mysql läuft - aber wie?

Aber auch andere Skripts ohn MySQL (z.B. ein Gästebuch welches in ein Testfile schreinbt oder ein Voting funktionieren nicht)

(Angehäng tnoch phpinfo von meinem System)

AceTheFace
06.05.04, 06:59
Na wo hängt die phpinfo()-Ausgabe denn? :)

Gruß,

Ace

stefaan
06.05.04, 07:04
Servus!

Das Paket php_mysql-* auch?

Grüße, Stefan

TheKing
06.05.04, 12:02
Hatte ein ähnliches Problem.
Bei mir wurden die Module nicht in der /etc/php.ini eingetragen.
Suche in der php.ini nach extensions und trage dort die Module ein, die du benötigst.
Da ich jetzt gerade nicht vor meinem privaten Rechner sitze kann ich leider nicht die genau Syntax nachschauen. Wenn ich mich jetzt richtig erinnere, sollte das dann so aussehen:
extensions=mysql.so
Aber da die Datei ja gut kommentiert ist, sollte es auch so kein Problem sein.
Nach einem rcapache2 reload sollte MySQL wieder verfügbar sein

Kapitaen
06.05.04, 18:26
also die PHP.ini habe ich gefunden - versuche das mal danke!

jetzt sollte php-info hängen - sorry

Kapitaen
06.05.04, 18:30
Oke - jetzt funktionierts halbwegs ;-I Danke - aber es geht immernoch nicht zu 100% - der MySQL-Connect geht aber einige PHP-Scripts laufen immernoch nicht - einfach keine Reaktion wenn ich den Link anklicke.

Kapitaen
06.05.04, 19:24
Villeicht hilft das noch mir zu helfen - wie ich gesehen habe werden die Anweisungen in php welche solche Syntax beinhalten:

phpgb.php?mode=xy


nicht berücksichtig ...

stefaan
06.05.04, 20:38
Servus!

Wie sprichst du die Variable $mode im Script an?
$_GET['mode'] oder nur $mode?

register_globals in der php.ini ist dein Freund :D

1. Methode ist empfohlen.

Grüße, Stefan

Kapitaen
06.05.04, 20:48
nur $mode aber als ich register_globals aktiviert habe wurde das Problem behoben - SUPER ! :) VIELEN DANK !!!

Mein nächstes Problem ist das ich keine Mail mit meinem PHP-Gästebuch auslösen kann:

Fatal error: Call to undefined function: mail() in /srv/www/htdocs/phpgb/phpgb.php on line 25

hast du für dieses Problem auch noch gerade eine Lösung in der Hosentasche oder im Ärmel?

Frase
06.08.04, 22:11
Ich nehme mal stark an, dass du Postfix als Mailserver laufen hast und nicht sendmail. Das ist aber an sich kein Problem, weil Postfix eine sendmail-kompatible Schnittstelle zur Verfügung stellt. Wenn er die Funktion aber nicht kennt...
Müsste eigentlich genauso hinzukriegen sein, wie die Geschichte mit mysql_connect().

munkmill
06.08.04, 22:51
nur $mode aber als ich register_globals aktiviert habe wurde das Problem behoben - SUPER ! :) VIELEN DANK !!!


register_globals zu aktivieren stellt aber ein erhöhtes Sicherheitsrisiko dar. Es sollte nach Möglichkeit immer aus sein und man sollte über die Arrays ($_GET, etc.) auf die Variablen zugreifen.

Jan

`kk
06.08.04, 23:39
Eben, du müsstest noch nicht mal was am Quellcode ändern.

Höchstens etwas hinzufügen, aber ist deine Sache.