Problem mit PHP, Apache oder MySQLServer?

Vom einfachen Programm zum fertigen Debian-Paket, Fragen rund um Programmiersprachen, Scripting und Lizenzierung.
Antworten
Benutzeravatar
hackbard4711
Beiträge: 310
Registriert: 15.07.2005 20:15:01
Lizenz eigener Beiträge: GNU Free Documentation License
Wohnort: Koblenz
Kontaktdaten:

Problem mit PHP, Apache oder MySQLServer?

Beitrag von hackbard4711 » 27.06.2006 21:32:27

Hi ich habe auf einem Server Apache1 mit PHP4 laufen. Habe eine Website auf einem anderen Testserver aufgebaut und dourt eine Datenbank implementiert gahabt. Die selbe Datenbank und die selbe Serverkonfiguration habe ich jetzt auf dem anderen Server auch laufen.

Nun zu meinem Problem:

ich habe eine extra PHP Datei die ich in meine index.php include. In der Datei stehen die Serverinformationen und dort findet der connect zur Datenbank statt. Wenn ich die Dateien nun auf den neuen Server lade, zeigt mir der Webbrowser garnichts mehr an. Auch wenn ich mir den Quellcode der Seite anschaue ist dieser komplett leer.

Darauf hin habe ich mal das includ entfernt und es geht einwandfrei. Allerdings brauche ich die Datenbankverbindung und deswegen hab ich mal ein bißchen mit dem Code in meiner Datenbankdatei rumgespielt.

Code: Alles auswählen

<?

  $db_server = "localhost"; 

  $db_name = "provider";   

  $db_user = "xyz";       

  $db_passwort = "xyz";

$db = @MYSQL_CONNECT($db_server,$db_user,$db_passwort) or die ("<font face='arial' size='2'><b>Konnte keine Verbindung zur Datenbankserver herstellen</b></font><br>");

$db_select = @MYSQL_SELECT_DB($db_name)or die ("<font face='arial' size='2'><b>Konnte keine Verbindung zur Datenbank herstellen</b></font><br>");

?>
So nun ist mir aufgefallen, dass wenn ich das @ vor den beiden mysql-Befehlen weg mache, dass es dann seltsammer weise wieder geht. Allerdings erkennt er dann die Funktionen nicht mehr.

Wäre nett wenn mir einer sagen kann was ich da falsch habe, bzw ob ich etwas vergessen habe. Wie gesagt auf nem anderen Rechner mit dem gleichen System läuft es ohne Probleme.

Danke schon mal.
Never touch a running System ! ! !
________
MFG

hacki

Benutzeravatar
MacGyver031
Beiträge: 628
Registriert: 18.08.2003 11:24:49
Wohnort: Wiedlisbach, Schweiz
Kontaktdaten:

Beitrag von MacGyver031 » 27.06.2006 22:50:08

Hi,
Das "@" bewirkt eine Unterdrückung von Fehlermeldungen.

Zu deinem Problem: schreib nicht die Befehle gross! Windows ist nicht case sensitive, linux jedoch sehr!

Code: Alles auswählen

.... mysql_connect....

Code: Alles auswählen

.... mysql_select_db....
Sincerely your
MacGyver

SysInfo:
Intel Centrino 1.3GHz, 1GB, ATI M9, 1400x1050.
2.6.23, xorg-x11 7.2 Fluxbox 1.0.0 and many more.

Benutzeravatar
hackbard4711
Beiträge: 310
Registriert: 15.07.2005 20:15:01
Lizenz eigener Beiträge: GNU Free Documentation License
Wohnort: Koblenz
Kontaktdaten:

Beitrag von hackbard4711 » 27.06.2006 23:17:21

Erst mal danke für den Tip. Aber das ist leider nicht die Lösung meines Problems.

Code: Alles auswählen

<?
  $db_server = "localhost";
  $db_name = "provider";
  $db_user = "xyz";
  $db_passwort = "xyz";
  $db = @mysql_connect($db_server,$db_user,$db_passwort);
  $db_select = @mysql_select_db($db_name);
?>
Immernoch der selbe fehler :( Seltsam ist nur das es vorher auch auf einem debianserver lief.

So hab das ja jetzt abgeändert. Alles klein funktioniert nicht. Alles klein und das @ vor dem mysql_connect weg funktioniert auch nicht weil ich dann immer diese Meldung hier bekomme:

Code: Alles auswählen

Fatal error: Call to undefined function: mysql_connect() in /var/testing/datenbank.php on line 6
So habe gedacht das es evtl an dem Passwort liegt was Sonderzeichen wie < oder # enthält. Aber das kanns auch nicht sein weil es ja vorher genau so lief und auch mit geändertem Passwort geht es nicht.

Irgendwie seltsam. Also wenn das @ ja wirklich nur für die Fehlermeldungsunterdrückung ist, dann sollte es ja wenigstens ohne das @ gehen aber tut es ja auch nicht. Habe auch andere Seiten auf dem Webserver (Wikimedia mit Datenbankanbindung und phpbb mit Datenbankanbindung) auf dem Server laufen und die funktionieren.
Never touch a running System ! ! !
________
MFG

hacki

Benutzeravatar
blackm
Moderator und Co-Admin
Beiträge: 5921
Registriert: 02.06.2002 15:03:17
Lizenz eigener Beiträge: MIT Lizenz

Beitrag von blackm » 27.06.2006 23:48:04

Von den Web- und Mailservern weggeschoben.

bye, Martin
Schöne Grüße

Martin

Neu im Forum? --> https://wiki.debianforum.de/debianforum ... tensregeln
Log- und Konfigurationsdatein? --> pastebin.php
Forum unterstützen? --> https://wiki.debianforum.de/debianforum.de/Spenden

Benutzeravatar
mauser
Beiträge: 1854
Registriert: 27.01.2005 22:34:48

Beitrag von mauser » 28.06.2006 08:38:54

hi,

das liegt einfach daran, das du in deinem PHP anscheinend keinen Mysql-Support aktiviert hast. Schau doch erstmal ob php-mysql (oder so..) installiert ist und ob in der php.ini die mysql.so auch geladen wird. Ein Blick in eine phpinfo() hilft auch manchmal ;-)
mfg
mauser

Benutzeravatar
hackbard4711
Beiträge: 310
Registriert: 15.07.2005 20:15:01
Lizenz eigener Beiträge: GNU Free Documentation License
Wohnort: Koblenz
Kontaktdaten:

Beitrag von hackbard4711 » 28.06.2006 09:28:31

Tatsache! In der php.ini war diese Zeile auskomentiert:

Code: Alles auswählen

extension=mysql.so
Also damit hätte ich ja mal garnicht gerechnet. Und auch seltsam, dass alle anderen php-scripte mit Datenbankzugriff auch funktioniert haben.

Naja jetzt gehts aber mal :wink:

Danke für eure Hilfe
Never touch a running System ! ! !
________
MFG

hacki

roli
Beiträge: 3174
Registriert: 10.09.2003 17:39:58

Beitrag von roli » 28.06.2006 10:16:48

Hi,

du koenntest jetzt auch gleich auf die neue MySQL-Extension - mysqli (i=improved), siehe Verbesserte MySQL Erweiterung, umsteigen.
Roland


"Aber wenn du schon so unwissend bist, davon noch nicht gehört zu haben,
so will ich es doch als gut ansehen, daß du lieber einmal töricht fragst,
als weiterhin nichts von etwas zu wissen, das man doch wissen sollte."
aus "Die Edda des Snorri Sturluson", "Gylfis Täuschung"

C167
Beiträge: 468
Registriert: 06.04.2006 08:55:20
Lizenz eigener Beiträge: MIT Lizenz
Kontaktdaten:

Beitrag von C167 » 30.06.2006 16:07:27

oder PEAR::DB nehmen ;)

Antworten