Datenbank in Tabelle ausgeben

Status
Nicht offen für weitere Antworten.

puschelchen

Erfahrenes Mitglied
Hallo Guten Morgen,
Frohes neues erstmal :)
hab nen problem mit meiner Datenbank da ich mein alten Post net mehr gefunden hab mach ich n neues auf.
http://img94.imageshack.us/i/bildschirmfoto35.png/
http://img94.imageshack.us/i/bildschirmfoto36.png/
http://img28.imageshack.us/f/bildschirmfoto34.png/

geb ich in mein "Formular"
nur den Vornamen ein wie Corinna
erscheint nur der Datensatz Corinna Meier. Bei David erscheinen alle Datensätze und mit is_null hat sich das mit dem Leerzeichen nicht verbessert empty funktioniert an der Stelle auch nicht mehr ich hoff ihr könntet mir helfen.
Formular_:
PHP:
<html>
<body>
    <form action="Tabellen.php" method="POST">
        <div align="right"/>
        Userid <input type="text" name="Userid"/><br>
        Vorname<input type="text" name="Vorname"/><br>
        Nachname <input type="text" name="Nachname"/><br>
        Firma <input type="text" name="Firma"/><br>
        Email <input type="text" name="Email"/><br>
        Telefon<input type="text" name="Telefon"/><br>
        Telefon2 <input type="text" name="Telefon2"/><br>
        Laufzeit <input type="text" name="Laufzeit"/><br>
        PCLizenzen <input type="text" name="PCLizenzen"/><br>
        Seriennummer<input type="text" name="Seriennummer"/><br>
        DatumAktiv <input type="text" name="DatumAktiv"/><br>
        DatumEndAktiv <input type="text" name="DatumEndAktiv"/><br>
        <input type=submit name=submit value="Formular absenden" /><br>
    </form>
</body>
</html>
PHP:
<html>
<body>
<?php
error_reporting(E_ALL);
$rowKeys = array('Userid', 'Vorname', 'Nachname','Firma','Email','Telefon','Telefon2','Laufzeit','PCLizenzen','Seriennummer','DatumAktiv','DatumEndAktiv');
$row = array_fill_keys($rowKeys, '');
    $Host = "localhost";
    $User = "david";
    $Password = "a";
    $dbname = "ABMC-Datenbank";
    $tbl="Kunden";
    mysql_connect('localhost', 'david', 'a') or die  ("Keine Verbindung möglich: ".mysql_error());
    mysql_select_db($dbname) or die  ("Keine Verbindung möglich: ".mysql_error());
    $sql  = "SELECT * FROM {$tbl} WHERE Userid LIKE '" .mysql_real_escape_string($_GET["Userid"])."%' AND";
    $sql .= " Vorname LIKE '" .mysql_real_escape_string($_GET["Vorname"])."%' AND";
    $sql .= " Nachname LIKE '" .mysql_real_escape_string($_GET["Nachname"])."%' AND";
    $sql .= " Firma LIKE '" .mysql_real_escape_string($_GET["Firma"])."%' AND";
    $sql .= " Email LIKE '" .mysql_real_escape_string($_GET["Email"])."%' AND";
    $sql .= " Laufzeit LIKE '" .mysql_real_escape_string($_GET["Laufzeit"])."%' AND";
    $sql .= " PCLizenzen LIKE '" .mysql_real_escape_string($_GET["PCLizenzen"])."%' AND";
    $sql .= " Seriennummer LIKE '" .mysql_real_escape_string($_GET["Seriennummer"])."%' AND";
    $sql .= " DatumAktiv LIKE '" .mysql_real_escape_string($_GET["DatumAktiv"])."%' AND";
    $sql .= " DatumEndAktiv LIKE '" .mysql_real_escape_string($_GET["DatumEndAktiv"])."%'";
    $result = mysql_query($sql) or die(mysql_error());
    $row = mysql_fetch_assoc($result);
?>
<table border="2">
<tr><td>Userid </td>
<td>Vorname</td>
<td>Nachname</td>
<td>Firma</td>
<td>Email</td>
<td>Telefon</td>
<td>Telefon2</td>
<td>Laufzeit</td>
<td>PCLizenzen</td>
<td>Seriennummer</td>
<td>DatumAktiv </td>
<td>DatumEndAktiv</td>
</tr>
<?php
while($row = mysql_fetch_assoc($result))
{
?>
<tr>
<td><?php echo (is_null($row['Userid']) ? "&nbsp;" :$row['Userid']);?></td>
<td><?php echo (is_null($row['Vorname']) ? "&nbsp;" :$row['Vorname']);?></td>
<td><?php echo (is_null($row['Nachname']) ? "&nbsp;" :$row['Nachname']);?></td>
<td><?php  echo (is_null($row['Firma']) ? "&nbsp;" :$row['Firma']);?></td>
<td><?php  echo (is_null($row['Email']) ? "&nbsp;" :$row['Email']);?></td>
<td><?php  echo (is_null($row['Telefon']) ? "&nbsp;" :$row['Telefon']);?></td>
<td><?php  echo (is_null($row['Telefon2']) ? "&nbsp;" :$row['Telefon2']);?></td>
<td><?php  echo (is_null($row['Laufzeit']) ? "&nbsp;" :$row['Laufzeit']);?></td>
<td><?php  echo (is_null($row['PCLizenzen']) ? "&nbsp;" :$row['PCLizenzen']);?></td>
<td><?php  echo (is_null($row['Seriennummer']) ? "&nbsp;" :$row['Seriennummer']);?></d>
<td><?php  echo (is_null($row['DatumAktiv']) ? "&nbsp;" :$row['DatumAktiv']);?></td>
<td><?php  echo (is_null($row['DatumEndAktiv']) ? "&nbsp;" :$row['DatumEndAktiv']);?></td>
</tr>
<?php
}
?>
</table>
</body>
</form>
</html>
Vielen Dank schonmal.
greetz
Puschelchen
 
Ich habe mir jetzt nicht alles angeschaut, aber was mir gleich aufgefallen ist: Du schickst das Formular mit POST ab und verarbeitest dann aber GET-Variablen?

Das passt ja wohl gar nicht!
 
naja er leitet uf die seite Tabellen.php nicht mehr er bleibt beim Formular stehn und macht nichts.
hab nur das POST in GET umgewandelt. :/
 
Wenn du wirklich mit obigem Code arbeitest, dann ändere diese Zeile

HTML:
<input type=submit name=submit value="Formular absenden" />

mal so ab

HTML:
<input type="submit" name="submit" value="Formular absenden" />

das könnte die Ursache sein.

Wenn du wirklich nur action="POST" in action="GET" geändert hast, hat es mit dem neuen Problem nichts zu tun.
 
ah Ok habs nun abgeändert
jetzt werden Alle angezeigt obwohl ich David Vruna eingegeben hab.
naja Tombe ich versuch alles erst mit POST und wandel dann um in GET.
tu ich mir leichter das wird ja später alles in get umgewandelt.
also ich werf nun das formular um auf get. Damit es nicht heisst ich hab nix gesagt
Code:
PHP:
<html>
<body>
    <form action="Tabellen.php" method="GET">
    </form>
</body>
</html>
Nun geb ich ein : http://localhost/abfrage.php? Vorname= David
Meine Seite bleibt leer ich werd nicht an die Tabellen.php geleitet warum? :/
 
Zuletzt bearbeitet:
Also wenn das da oben die Seite "abfrage.php" ist und du diese Seite so wie oben angegeben aufrufst, dann wird dieses Formular nicht abgeschickt!

Ich habe das zum Testen mal so geändert und es scheint zu klappen:

PHP:
<html>
<body>
<div align="right">
    <form action="Tabellen.php" method="GET">
        Userid <input type="text" name="Userid"/><br />
        Vorname<input type="text" name="Vorname"/><br />
        Nachname <input type="text" name="Nachname"/><br />
        Firma <input type="text" name="Firma"/><br />
        Email <input type="text" name="Email"/><br />
        Telefon<input type="text" name="Telefon"/><br />
        Telefon2 <input type="text" name="Telefon2"/><br />
        Laufzeit <input type="text" name="Laufzeit"/><br />
        PCLizenzen <input type="text" name="PCLizenzen"/><br />
        Seriennummer<input type="text" name="Seriennummer"/><br />
        DatumAktiv <input type="text" name="DatumAktiv"/><br />
        DatumEndAktiv <input type="text" name="DatumEndAktiv"/><br />
        <input type="submit" name="submit" value="Formular absenden" /><br />
    </form>
</div>

<?php
if (isset($_GET["submit"])) {
	error_reporting(E_ALL);
	$rowKeys = array('Userid', 'Vorname', 'Nachname','Firma','Email','Telefon','Telefon2','Laufzeit','PCLizenzen','Seriennummer','DatumAktiv','DatumEndAktiv');
	$row = array_fill_keys($rowKeys, '');
	$Host = "localhost";
	$User = "david";
	$Password = "a";
	$dbname = "ABMC-Datenbank";
	$tbl="Kunden";
	mysql_connect('localhost', 'david', 'a') or die  ("Keine Verbindung möglich: ".mysql_error());
	mysql_select_db($dbname) or die  ("Keine Verbindung möglich: ".mysql_error());
	$sql  = "SELECT * FROM {$tbl} WHERE ";
	if (!empty($_GET['Userid']))		$data[] = "Userid LIKE '%" .mysql_real_escape_string($_GET["Userid"])."%'";
	if (!empty($_GET['Vorname']))		$data[] = "Vorname LIKE '%" .mysql_real_escape_string($_GET["Vorname"])."%'";
	if (!empty($_GET['Nachname']))		$data[] = "Nachname LIKE '%" .mysql_real_escape_string($_GET["Nachname"])."%'";
	if (!empty($_GET['Firma']))			$data[] = "Firma LIKE '%" .mysql_real_escape_string($_GET["Firma"])."%'";
	if (!empty($_GET['Email']))			$data[] = "Email LIKE '%" .mysql_real_escape_string($_GET["Email"])."%'";
	if (!empty($_GET['Laufzeit']))		$data[] = "Laufzeit LIKE '%" .mysql_real_escape_string($_GET["Laufzeit"])."%'";
	if (!empty($_GET['PCLizenzen']))	$data[] = "PCLizenzen LIKE '%" .mysql_real_escape_string($_GET["PCLizenzen"])."%'";
	if (!empty($_GET['Seriennummer']))	$data[] = "Seriennummer LIKE '%" .mysql_real_escape_string($_GET["Seriennummer"])."%'";
	if (!empty($_GET['DatumAktiv']))	$data[] = "DatumAktiv LIKE '%" .mysql_real_escape_string($_GET["DatumAktiv"])."%'";
	if (!empty($_GET['DatumEndAktiv']))	$data[] = "DatumEndAktiv LIKE '%" .mysql_real_escape_string($_GET["DatumEndAktiv"])."%'";
	$sql .= implode(" AND ", $data);

	$result = mysql_query($sql) or die(mysql_error());
?>
	<table border="2">
		<tr>
			<td>Userid </td>
			<td>Vorname</td>
			<td>Nachname</td>
			<td>Firma</td>
			<td>Email</td>
			<td>Telefon</td>
			<td>Telefon2</td>
			<td>Laufzeit</td>
			<td>PCLizenzen</td>
			<td>Seriennummer</td>
			<td>DatumAktiv </td>
			<td>DatumEndAktiv</td>
		</tr>
<?php
	while($row = mysql_fetch_assoc($result)) {
?>
		<tr>
			<td><?php echo (is_null($row['Userid']) ? "&nbsp;" :$row['Userid']);?></td>
			<td><?php echo (is_null($row['Vorname']) ? "&nbsp;" :$row['Vorname']);?></td>
			<td><?php echo (is_null($row['Nachname']) ? "&nbsp;" :$row['Nachname']);?></td>
			<td><?php  echo (is_null($row['Firma']) ? "&nbsp;" :$row['Firma']);?></td>
			<td><?php  echo (is_null($row['Email']) ? "&nbsp;" :$row['Email']);?></td>
			<td><?php  echo (is_null($row['Telefon']) ? "&nbsp;" :$row['Telefon']);?></td>
			<td><?php  echo (is_null($row['Telefon2']) ? "&nbsp;" :$row['Telefon2']);?></td>
			<td><?php  echo (is_null($row['Laufzeit']) ? "&nbsp;" :$row['Laufzeit']);?></td>
			<td><?php  echo (is_null($row['PCLizenzen']) ? "&nbsp;" :$row['PCLizenzen']);?></td>
			<td><?php  echo (is_null($row['Seriennummer']) ? "&nbsp;" :$row['Seriennummer']);?></d>
			<td><?php  echo (is_null($row['DatumAktiv']) ? "&nbsp;" :$row['DatumAktiv']);?></td>
			<td><?php  echo (is_null($row['DatumEndAktiv']) ? "&nbsp;" :$row['DatumEndAktiv']);?></td>
		</tr>
<?php } ?>
	</table>
<?php } ?>
</body>
</html>
 
Okay Tombe habs übernommen
mir is nur eins aufgefallen
geb ich sie in der Browserzeile an kommt raus:
Notice: Undefined variable: data in /srv/www/htdocs/abfragen.php on line 44 Warning: implode(): Invalid arguments passed in /srv/www/htdocs/abfragen.php on line 44 You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 1
und die css formatierung klappt leider au nid :(
 
Zuletzt bearbeitet:
Und Puschelchen? Hast du eine Ahnung woran es liegen könnte?
Was hast du schon unternommen um dieses Problem zu lösen?

Oder lässt du dir hier von tombe einfach alles vorkauen?

Ich habe hier 2 Tutorials die dir helfen Probleme zu lokalisieren.
PHP Debuggen mit var_dump()
PHP MySQL Debug Queries

Verscuh doch selber mal die Fehler zu finden. Wenn du die Fehler weiter eingegrenzt hast, können wir die wieder helfen. Aber ein wenig Eigeninitiative währe doch ganz nett.
 
Status
Nicht offen für weitere Antworten.
Zurück