Bestimmte Daten aus Datenbank auslesen

Hallo Leute,

ich bastle seit langer Zeit mal wieder an einer Homepage und bin da etwas eingerostet. :slight_smile:

So nun zu meinen Problem, ich habe ein html Anmeldeformular erstellt, sowie ein php Sendeformular, welches mir die eingegebenen Daten in meine SQL-Datenbank schreibt. Bis hier hin funktioniert auch alles. Desweiteren habe ich einen php-code geschrieben, welcher mir eine Tabelle mit den von mir gewÀhlten Spalten aus meiner SQL-Datenbank ausliest.

[code]

Teilnehmer-Hardware-Statistik table { border-collapse:collapse; } td { border:1px solid #C0C0C0; }
<?php $host = "localhost"; // Server $user = "**********"; // Benutzername $pass = "*******************"; // Passwort $db = "**********"; // Datenbank-Name

$link = mysql_connect($host, $user, $pass) or die (“Keine Verbindung zu der Datenbank möglich.”);
mysql_select_db($db, $link);

$sql = “SELECT rechner,netzteil,lanport,cpu,ram,hdd FROM eintragen ORDER BY rechner,netzteil,lanport,cpu,ram,hdd”; // Nach name sortieren
$abf = mysql_query($sql) or die(mysql_error().“

SQL:
”.$sql);
while($erg = mysql_fetch_array($abf)) {
echo("

\n");
echo(" \n");
echo(" \n");
echo(" \n");
echo(" \n");
echo(" \n");
echo(" \n");
echo(" \n");
}
[/code]

Nun habe ich nur noch das Problem, das wenn ein User im Anmeldeformular keine Angaben machen will, steht in der SQL-Datenbank “k.A.”. Nun meine Frage, kann ich in dem oben gezeigten php-code noch ein paar Zeilen einfĂŒgen um zu sagen, dass der Code wenn in Spalte X “k.A” steht, die weitere Zeile nicht ausgeben soll. Somit steht in der Tabelle nun nicht mehr “k.A.” sondern nur die EintrĂ€ge, welche auch wirklich ausgefĂŒllt sind.

Die Tabelle findet ihr unter : http://www.gamesession-riesa.de/index.php?option=com_wrapper&view=wrapper&Itemid=48

Könnt ihr mir bitte helfen?

Im Voraus DANKE

MFG Mozie

Rechner Netzteil Netzwerk CPU RAM in MB HDD in GB
“.htmlentities($erg[“rechner”]).”“.htmlentities($erg[“netzteil”]).”“.htmlentities($erg[“lanport”]).”“.htmlentities($erg[“cpu”]).”“.htmlentities($erg[“ram”]).”“.htmlentities($erg[“hdd”]).”

z.B.<span class="syntaxdefault"></span><span class="syntaxkeyword">echo(</span><span class="syntaxstring">" <td><font color='#C0C0C0'>"</span><span class="syntaxkeyword">.(</span><span class="syntaxdefault">$erg</span><span class="syntaxkeyword">[</span><span class="syntaxstring">'rechner'</span><span class="syntaxkeyword">]==</span><span class="syntaxstring">'k.A.'</span><span class="syntaxkeyword">?</span><span class="syntaxstring">''</span><span class="syntaxkeyword">:</span><span class="syntaxdefault">htmlentities</span><span class="syntaxkeyword">(</span><span class="syntaxdefault">$erg</span><span class="syntaxkeyword">[</span><span class="syntaxstring">'rechner'</span><span class="syntaxkeyword">])).</span><span class="syntaxstring">"</td>\n"</span><span class="syntaxkeyword">);</span><span class="syntaxdefault"> </span>Ist aber ne unsaubere Lösung
 einfacher wĂ€re es gar nicht erst “k.A.” zu nutzen wenn es ja sowieso nicht angezeigt werden soll xD [size=85](wenn’s unbedingt im Formular stehen soll, dann eben vorm Eintragen durch ‘’ ersetzten^^)[/size]

Hi,

einfach den SQL “Befehl” nehmen


lg flo

//Edit: sollte des oben nicht klappen (muss aber eig) bin mir grad nicht sicher dann nimm den

@Ryon_
Wenn das was du vorhast funktionieren wĂŒrde
 wĂŒrde das dann nicht bedeuten das sobald ein Feld “k.A.” beinhaltet, alle Angaben ignoriert werden, so als ob die Spalte nie existiert hĂ€tte?
Das wĂŒrde User dazu zwingen alles auszufĂŒllen was iwie totaler Bullshit wĂ€re^^ Dann sollte man das erst recht beim Eintragen prĂŒfen anstatt einfach nur MĂŒll einzutragen^^
Außerdem heißt “k.A.” das man es nicht ausfĂŒllen muss^^ Bei deinem Code mĂŒsse man es dann aber doch :wink:

hi,

[quote=“White-Tiger”]@Ryon_
Wenn das was du vorhast funktionieren wĂŒrde
 wĂŒrde das dann nicht bedeuten das sobald ein Feld “k.A.” beinhaltet, alle Angaben ignoriert werden, so als ob die Spalte nie existiert hĂ€tte?
Das wĂŒrde User dazu zwingen alles auszufĂŒllen was iwie totaler Bullshit wĂ€re^^ Dann sollte man das erst recht beim Eintragen prĂŒfen anstatt einfach nur MĂŒll einzutragen^^
Außerdem heißt “k.A.” das man es nicht ausfĂŒllen muss^^ Bei deinem Code mĂŒsse man es dann aber doch :wink:[/quote]
ja klar 
 ist ja auch so beabsichtigt er hat ja geschrieben:

Das wĂŒrde fĂŒr mich heißen wenn irgendwo ka vorkommt soll die komplette (Datenbank-)Zeile ausgeblendet werden 
 und nicht nur die Spalte
klar dass sowas eigentlich sinnlos ist denn ich persönlich wĂŒrde des auch nicht erst in die datenbank eintragen lassen wenn nicht alle felder ausgefĂŒllt sind aber manchmal bracht mans doch unter umstĂ€nden 

Wenn ich des falsch verstanden hab dann ist natĂŒrliche deine Lösung richtig


lg flo

Super ich danke dir Ryon_ deine Antwort hat geholfen :slight_smile:
Funktioniert so wie ich es mir vorgestellt habe.

Nun noch eine Frage :slight_smile:

Geht es ein php-code zu schreiben welches mir alle daten aus der Dtatenbank anzeigt und ich sie bearbeiten kann und wieder speichern? Sodass ich mich nicht in meine SQL-Datenbank einloggen muss.

MFG Mozie

Hi,

ja klar geht des (im Prinzip loggst du dich eh immer in die Datenbank ein aber du meinst warscheinlich das du das nicht ĂŒber phpmyadmin machen möchtest).

Kannst dich bei mir melden Skype (daflo95) oder PM dann mach ich dir nen Code der Passt

lg flo

//edit: Im Prinzip eigentlich so

ABER nur ein Beispiel bitte nicht so einsetzten des is schlampig

[html zeug]
...
<?php
if(!empty($_POST['updatetext'])) {
  mysql_query("UPDATE spalte='$_POST[updatetext]' FROM tabelle");
}

/*Datenbank verbindung*/
$sql = "SELECT spalte FROM tabelle";
$result = mysql_query($sql);
$row = mysql_fetch_assoc($result);

$spalte1 = $row['spalte'];
?>

<form method="post" action="">
Deine Spalte: <input type="text" value="<?php echo $spalte1; ?>" name="updatetext"><br>
<input type="submit" value="update">
</form>