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>