Spezielle Tabellenzelle ansteuern (MySQL)

G4 94

Mitglied
Hi Leute,
ich bin MySQL Anfänger und brauche euere Hilfe. Ich möchte in einer Tabelle aus einer speziellen Zelle den Inhalt auf einer Website darstellen. bis jetzt bin ich so weit, dass ich mit diesem Stück Code die Spalte (bzw. Spalten) auswählen kann. Ich weiß aber nicht, wie ich es erweitere, um eine bestimmte Reihe (bzw. Reihen) auszuwählen.

Codestück

PHP:
function print_result_table($result){
  while ($row = mysql_fetch_row($result)){


for ($i = 1; $i ==1; $i++){
      echo "$row[$i]";
    }}}

ich hoffe ihr könnt mir helfen. Danke im Vorraus!

lg Lukas
 
Ich würde dir zu folgender Variante ratten....

wenn du alle Zeilen ausgeben willst:
PHP:
function print_result_table($result){ 
	while($row = mysql_fetch_object($result)){
		echo $row->DEINE SPLATE;
	}

wenn du eine Zeile ausgeben willst musst du deine SQL Anweisung dem entsprechend anpassen mit

Code:
WHERE SPLATTENNAME = PARAMETER

Hoffe das war in deinem Sinne
 
Du weist doch vorher welche Zelle du ausgeben willst, darum sag ich ja musst du das in deine SQL-Anweisung einbauen mit dem WHERE.

Beispiel

Code:
SELECT * FROM Users WHERE UserID = '14'

und dann kannst du einfach:

PHP:
function print_result_table($result){ 
    while($row = mysql_fetch_object($result)){
        echo $row->Name;
    }

machen. Dann wird nur diese eine Zelle ausgegeben. In diesem Fall "Name".

### EDIT: ###
Noch als Info:
PHP:
for(int i=0;i==1;i++)
in einer for-Schleife darf NIEMALS == als Vergleichs-Operator benutzt werden nur <, <=, >= oder > alles andere funktiniert nicht!
 
Zuletzt bearbeitet:
Danke, ich hatte dein erstes Posting leider nicht ganz verstanden:)
ich bin jetzt so weit:

PHP:
function print_result_table($result){ 
    while($row = mysql_fetch_object($result)){
        echo $row;
    }  




$db = @mysql_connect($db_host,$db_user,$db_pass)
      OR die(mysql_error());
@mysql_select_db($datab,$db)
      OR die(mysql_error());

$result = @mysql_query("SELECT * FROM news WHERE erstens = '1'");
if (mysql_errno() != 0){
  echo mysql_error();
}
else {
  if (mysql_num_rows($result) == 0){
    echo "Fehler!";
  }

  else{
    print_result_table($result);
  }
}



?></body>


</html>
Ich weiß nur nicht was hier unter "DEINE SPALTE" stehen muss.
PHP:
echo $row->DEINE SPLATE;

Des weiteren kommt die Fehlermeldung:
Parse error: syntax error, unexpected $end in /usr/export/www/vhosts/funnetwork/hosting/mactool/test.php on line 41

ich hoffe du kannst mir noch einmal helfen:)

lg Lukas
 
Ersteinmal hast du vergessen deine Function mit einem } zu schließen darum
Code:
unexpected $end

Dann:
Die Datenbank ist die folgendermassen aufgebaut:

ID | Name | PW
--------------------------------------------
1 | Hans | password1
2 | Alex | password2
1 | Jens | password3

das DEINE SPLATE müsste nun in meienm Beispiel mit Name oder PW ersetzt werden. Du musst DEINE SPLATE nun mit den namen deiner Datenbank Spalten ersetzten.

Hoffe konnte das verständlich ausdrücken ;)
 
Geil! Danke! Es funktioniert:)

eine letzte Frage noch (oder vielleicht wird es doch nicht die letzte...): kann ich es so programmieren, dass an dieser Stelle
PHP:
WHERE zahl = '1'"
der Computer die größte vorhandene Zahl ausliest und diese Reihe Wählt?

also...

PHP:
WHERE zahl = 'größte'"

lg Lukas
 
Code:
$last_id = mysql_query("SELECT LAST_INSERT_ID() FROM TABELLE", $db);

TABELLE durch deinen Tabellennamen ersezten

Aber denke das geht, habs selbst nie ausprobiert.
 

Neue Beiträge

Zurück