[PHP]Problem mit MySQL

UltimateKeks

Grünschnabel
Hallo Community :D

Ich lerne momentan PHP und bin noch im Anfänger-Stadium.
Ich habe heute mal ein bisschen mit Stylesheets experimentiert
und eine Art "Gästebuch" geschrieben. Das Problem ist nun Folgendes:

In Index.php werden sämtliche Nachrichten aus der MySQL DB
ausgelesen und in einer Tabelle ausgegeben. Auf dem localhost
(xampp) funktioniert das Prima.

Sobald ich allerdings die Daten der
MySQL Verbindung passend zum Ohost Webspace ändere und meine
Site dann darauf hochlade, funktioniert zwar das Schreiben in die
Datenbank über senden.php aber das Auslesen der Datenbank
funktioniert einfach nicht. In die Tabelle wird pro Zeile einfach ""
eingetragen...

Hier der MySQL Ausschnitt aus Senden.php (funktioniert)

Code:
		$dbhost = "*******.**.ohostsql.de";
		$dbname = "***";
		$dbuser = "***";
		$dbpass = "***";
		$datum = date("d.m.Y");
		$uhrzeit = date("H:i");
		$name = $_POST["name"]." ".date("d.m.Y")." ".date("H:i");
		$dbquery = "INSERT INTO nachrichten (Name, Nachricht) VALUES ('{$name}','{$_POST["text"]}')";
		$db = mysql_connect($dbhost,$dbuser,$dbpass);
		mysql_select_db($dbname, $db);
		mysql_query($dbquery, $db) or die(mysql_error());
		mysql_close();

und hier der MySQL Ausschnitt aus index.php (funktioniert auf Localhost aber nicht auf dem Ohost Webspace)

Code:
<table class="tabelle2">
<tr><td><span class="schrift">Name/Datum</span></td><td><span class="schrift">Nachricht</span></td></tr>
<?php
	$dbhost = "*******.**.ohostsql.de";
	$dbname = "***";
	$dbuser = "***";
	$dbpass = "***";
	$dbquery = "SELECT Name, Nachricht FROM nachrichten";
	$db = mysql_connect($dbhost,$dbuser,$dbpass);
	mysql_select_db($dbname, $db);
	$dberg = mysql_query($dbquery);
	while ($var = mysql_fetch_array($dberg)){ 
?>
<tr> 
<td><?=$var['Name']?></td> 
<td><?=$var['Nachricht']?></td> 
</tr> 
<?php 
	}
	mysql_close();
?> 
</table>

Ich habe ja schon die Vermutung dass der Ohost MySQL Server irgendwie veraltet ist und daher dort ein anderer Syntax benutzt werden muss? Kann das sein?
Für Hilfe wäre ich sehr dankbar :)

MfG, UltimateKeks.
 
Halli Hallo und willkommen bei PHP.

Hier ein paar Tipps wie man damit umgehen kann:

1. Schalte die Fehler-Anzeige ein. Dazu schreibst du in dein Script in die ersten Zeilen folgenden Code:

PHP:
error_reporting( E_ALL | E_STRICT );
ini_set( 'display_errors', 1 );

2. Füge hinter alle notwendigen mysql-Funktionsaufrufe eine Fehlerbehandlung ein, die wie folgt lautet:

PHP:
$result = mysql_query( ..... ) or die( mysql_error() );

Also gemeint ist das "or die( mysql_error() )". Die nötigsten Funktionen sind mysql_connect(), mysql_select_db() und mysql_query().

3. Verwende var_dump():

PHP:
while( $zeile = mysql_fetch_array( $result ) )
{
  echo "<pre>";
  var_dump( $zeile );
  echo "</pre>";
  ....
}
 
ok also erstmal danke für die Hilfe saftmeister, allerdings war der Fehler ziemlich simpel :D
Und zwar akzeptiert Ohost "<?" nicht sondern nur "<?php".

MfG, UltimateKeks :)
 
Zurück