Datenbankverbindung will nicht

olguil

Mitglied
Hallo,

ich beisse seit heute morgen in die Tischplatte. Ich habe Datenbanken genug laufen allerdings keine unter phpMyAdmin 2.6.0-pl2 mit MySQL 3.23.54.

Also, ich habe in der Datenbank XYungelöst eine Tabelle erstellt mit vielen netten Feldern.

Dasselbe habe ich auch auf anderen Datenbanken laufen, nur hier funktioniert es einfach nicht.

Ich bekam von meinem "Guru" folgende Angaben:

DB Server: localhost
Datenbank: 7356_1
Benutzer: XXXXXXX
Passwort: XXXXXXX

Dazu mein Script, um verschiedene Abläufe zu speichern. Hier das Script:

PHP:
<?PHP
  $mysql_user = "xxxxxx";
  $mysql_pass="xxxxxxxx";
  $mysql_host="localhost";  
  $mysql_db="7356_1"; 
  $db=@mysql_connect($mysql_host,$mysql_db,$mysql_pass,$mysql_user); 
	  
  $ip=$_SERVER{'REMOTE_ADDR'}; 
  $ref=$_SERVER['HTTP_REFERER'];
  $wo=$_SERVER['REQUEST_URI'];
  $wann=date("D M d, Y G:i"); 
  $query="INSERT INTO tabelle (ip_adr,day,refer,domain) VALUES ('$ip','$wann','$ref','$wo')";
  $query OR die("Fehler beim eintragen!");
?>

tabelle=mein Tabellenname

Wie ihr vielleicht seht ist es ein abgewandeltes Script aus dem tutorials hier.

Vielen Dank für eure Hilfe.

Oliver
 
1) Nimm das @ vor mysql_connect raus, damit unterdrückst du Fehlermeldungen und dann kann dir das System auch nicht sagen, was du falsch machst

2) Die richtige Reihenfolge für die Datenbank-Verbindung ist:

localhost, user, passwort

3) Die Datenbank würde ich nach erfolgter Verbindung über mysql_select_db() auswählen, is meiner Meinung nach sicherer

4) Ein Query wird durch mysql_query() aktiviert. Bei dir sollte das Insert so eigentlich nicht funktionieren.
 
Hallo,

da bin ich noch mal. Ich habe nun es so angepasst wie du sagtest. Aber sorry, bin ein Anfänger und lerne so unter Anderem.

Hier also der Zwischenstand:
PHP:
<?PHP
  $mysql_host="localhost";  
  $user = "xxxxxx";
  $mysql_pass="xxxxxxx";
  $mysql_db="7356_1"; 
  $db=mysql_connect($mysql_host,$user,$mysql_pass,$mysql_db);
  
  $ip=$_SERVER{'REMOTE_ADDR'}; 
  $ref=$_SERVER['HTTP_REFERER'];
  $wo=$_SERVER['REQUEST_URL'];
  $wann=date("D M d, Y G:i");
  $mysql_select_db = mysql_db INSERT INTO tabelle VALUES ('$ip','$wann','$ref','$wo');
  $results=mysql_query OR die("Fehler beim eintragen!");
	
?>

Fehlermeldung: Parse error: parse error, unexpected T_STRING in /home/sites/site94/web/log/ip.php on line 12

Also nicht hauen, euch mag der Gedanke kommen, man ist der "blöd", aber so ist es leider. Ich glaube ich sehe den Wald vor lauter Bäumen im Moment nicht.

Für weitere Hilfe wäre ich dankbar.

Oliver
 
Hier mal ein kleines Beispiel:

PHP:
 <?
 	// Login Daten
 	$host = "localhost";
 	$database = "";
 	$user = "";
 	$pass = "";
 
 	//Zur DB connecten
 
 	$db = mysql_connect($host,$user,$pass) or die("Die angegebenen Login-Daten	 sind fehlerhaft");
 	mysql_select_db($database,$db) or die("Die Angegebene Datenbank konnte nicht ausgewaehlt werden");
 
 	//Daten einfügen
 
 	mysql_query("INSERT INTO tabellenname (Attribut1, Attribut2, ....) 
 						 VALUES (Wert1, Wert 2, ....);");
 ?>

hoffe das hilft dir weiter
 
$mysql_select_db = mysql_db INSERT INTO tabelle VALUES ('$ip','$wann','$ref','$wo');

Das ist der Fehler.

Das Skript meines Vorgängers ist genau das, was du brauchst.

Mit mysql_select_db() wählst du dir die Datenbank aus (war dein 5...irgendwas)
Außerdem ist das ne Funktion und keine Variable.

Grundlagen PHP wären nicht schlecht :p

cu shutdown
 
Hallo,

da bin ich wieder.

Vielen Dank an alle ich hab es geschafft etwas einzutragen in diese Datenbank.

Danke nochmal.

Oliver
 
Zurück