php.de

Zurück   php.de > Webentwicklung > Datenbanken

Datenbanken SQL und Co

Thema geschlossen
 
LinkBack Themen-Optionen Thema bewerten
Alt 29.06.2011, 20:04  
Neuer Benutzer
 
Registriert seit: 05.05.2011
Beiträge: 12
PHP-Kenntnisse:
Anfänger
SpacePilot befindet sich auf einem aufstrebenden Ast
Standard Ausgabe einer Dynamischen Tabelle in PHP

Hallo liebe Community!

Ich habe folgendes, für mich scheinbar unlösbares, Problem:

Ich entwickle grade für die Schule eine Website aufder man die Daten einer x-beliebeigen datenbank im web eingeben kann und dan zu ihr zu connecten ( mt user, passwort, tabelle, datenbank und nochmehr schnickschnack.

Alles was mit der Verbindung zur Datenbank zutun hat läuft soweit $connect läuft.

Nun der Knackpunkt da man bei der Seite später die werte ändern soll brauche ich um die Benutzerfreundlichkeit zu erhöhen natülich auch eine tabelle wo die derzeitigen werte drinne stehen. Im Stil von phpmyadmin. Jedoch will der Code nicht so wie ich will und stellt die werte der tabelle ( id, name, gewicht) nicht spaltenweise da, sondern in zeilen. genau dieses will ich umkehren habe aber keinen Plan wie das funktionieren könnte.
hier mal mein QC:

PHP-Code:
<div id="tabellen_ausgabe">
    <table>
      <tr id="attribute">
      <?php
      
if($verbindung_zum_server == && $tbl_name!="")//Prüfung auf Verbindung
      
{
      
$connect mysql_connect($host,$user,$pass);
      
$select_db mysql_select_db($db);
      
$sql "SHOW COLUMNS FROM tbl_name".$tbl_name;
      
$res mysql_query($sql);
      
      while (
$row mysql_fetch_assoc($res))
          {
            
$result[] = $row['Field'];
          }
        
$att_rows count($result);
      while (
$att_rows 0)
      {
        echo
'<td id="'.mysql_field_name($res,$att_rows).'" class="ausgabe_db_tbl"></td>'// Ausgabe  der kopfzeile 
        
$att_rows --;
      }; 
      
      };
      
?>
      </tr>//Weitere zeilen nach diesem Zeileninhalt  
    </table> 
   </div>

Geändert von SpacePilot (29.06.2011 um 20:29 Uhr).
SpacePilot ist offline  
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 29.06.2011, 20:15  
Moderator¹
 
Registriert seit: 28.03.2010
Beiträge: 7.470
PHP-Kenntnisse:
Fortgeschritten
ChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer Anblick
Standard

Du erzeugst nur ein einziges TR-Element, und in diesem für jeden Datensatz ein TD-Element - dem du aber keinerlei Inhalt gibst.
__________________
RGB is totally confusing - I mean, at least #C0FFEE should be brown, right?
ChrisB ist offline  
Alt 29.06.2011, 20:25  
Neuer Benutzer
 
Registriert seit: 05.05.2011
Beiträge: 12
PHP-Kenntnisse:
Anfänger
SpacePilot befindet sich auf einem aufstrebenden Ast
Standard

Da liegt ja auch mein haken ich weiß nicht wie ich das machne soll also muss ich das gleich rekursiv machen weil ich ja irgendwann auch Daten auslesen will?! Oder muss ich zuerst halt die "Kopfzeile" bauen.

Am ene soll es so aussehen vom Sufbau her:

Code:
+-------+----------+----------+
|    id    |    name  |  gewicht |  
+-------+----------+----------+
|    1     |    keks   |    100     |
|    2     |  kuchen |    600     |
+-------+----------+----------+
jedoch soll sie variabel sein sodas der kuchen auch shchnell mal noch ein extra attribut konsitens bekommen kann.
SpacePilot ist offline  
Alt 29.06.2011, 20:26  
Moderator
 
Benutzerbild von Chriz
 
Registriert seit: 11.05.2008
Beiträge: 6.266
Chriz ist ein wunderbarer AnblickChriz ist ein wunderbarer AnblickChriz ist ein wunderbarer AnblickChriz ist ein wunderbarer AnblickChriz ist ein wunderbarer AnblickChriz ist ein wunderbarer AnblickChriz ist ein wunderbarer Anblick
Standard

$result scheint dich auch nicht zu interessieren.

Versuch doch bitte mal - auch wenn du erst mit Programmieren angefangen hast - zuerst die Daten einzusammeln die du benoetigst und gib sie erst anschliessend aus. Ich kann dieses mysql_connect() innerhalb eines <tr> wirklich nicht sehen, das ist gruselig.

Nennt sich EVA-Prinzip.

PHP-Code:
<?php
error_reporting
(E_ALL E_STRICT);
ini_set("display_errors"1);

function 
mysqlErrorHandler() {
  throw new 
Exception(mysql_error(), mysql_errno());
}

$link mysql_connect(..) or mysqlErrorHandler();
mysql_select_db(..) or  or mysqlErrorHandler();

$tables = array();
$sql "SHOW TABLES FOR $database";
$res mysql_query($sql) or mysqlErrorHandler();

while (
$row mysql_fetch_assoc($sql)) {
  
$table $row["TableName"];
  
$columns = array();
  
  
$sql2 "SHOW COLUMNS FOR $tableName";
  
$res2 mysql_query($sql2) or mysqlErrorHandler();

  while (
$row2 mysql_fetch_assoc($res2)) {
    
$columns[] = $row["Field"];
  }

  
$tables[$table] = $columns;
}
echo 
"<pre>"print_r($tablestrue), "</pre>";

// Jetzt kennst du die Struktur, kannst gezielt die Daten auslesen

// ..

// Jetzt wo du Struktur und Daten hast, kannst du das ganze als HTML ausgeben!
?>
(Code ungetestet)
__________________
"Nuschel ich?" - "Was?"
Chriz ist offline  
Alt 29.06.2011, 20:27  
Moderator¹
 
Registriert seit: 28.03.2010
Beiträge: 7.470
PHP-Kenntnisse:
Fortgeschritten
ChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer Anblick
Standard

Zitat:
Zitat von SpacePilot Beitrag anzeigen
Da liegt ja auch mein haken ich weiß nicht wie ich das machne soll also muss ich das gleich rekursiv machen weil ich ja irgendwann auch Daten auslesen will?!
Rekursion hat damit wenig zu tun.

Zitat:
Oder muss ich zuerst halt die "Kopfzeile" bauen.
Natürlich, die ergibt sich ja nicht aus den Datensätzen.

Zitat:
Code:
+-------+----------+----------+
|    id    |    name  |  gewicht |  
+-------+----------+----------+
|    1     |    keks   |    100     |
|    2     |  kuchen |    600     |
+-------+----------+----------+
jedoch soll sie variabel sein sodas der kuchen auch shchnell mal noch ein extra attribut konsitens bekommen kann.
Und wie soll die Tabelle dann aussehen ...?
__________________
RGB is totally confusing - I mean, at least #C0FFEE should be brown, right?
ChrisB ist offline  
Alt 29.06.2011, 20:31  
Neuer Benutzer
 
Registriert seit: 05.05.2011
Beiträge: 12
PHP-Kenntnisse:
Anfänger
SpacePilot befindet sich auf einem aufstrebenden Ast
Standard

Update neuer QC siehe oben
SpacePilot ist offline  
Alt 29.06.2011, 20:36  
Moderator¹
 
Registriert seit: 28.03.2010
Beiträge: 7.470
PHP-Kenntnisse:
Fortgeschritten
ChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer Anblick
Standard

Zitat:
Zitat von SpacePilot Beitrag anzeigen
Update neuer QC siehe oben
Toll.
Und ...?
__________________
RGB is totally confusing - I mean, at least #C0FFEE should be brown, right?
ChrisB ist offline  
Alt 29.06.2011, 20:38  
Neuer Benutzer
 
Registriert seit: 05.05.2011
Beiträge: 12
PHP-Kenntnisse:
Anfänger
SpacePilot befindet sich auf einem aufstrebenden Ast
Standard

die tabelle soll sich der datenbank bzw. der Tabelle die durch den vorherigencode angesteuert wird anpassen.
D.h. wenn ich eine tabelle habe mit 5 attributen (id,name,vorname,alter,geschlecht) soll sie so aussehen:


PHP-Code:

//tbl: namen
+-------+----------+----------+----------+----------+
|    
id    |    name  |  v_name|     alter   geschl.   |  
+-------+----------+----------+----------+----------+
|    
1     |    keks   |    walter |      46     |   M       |
|    
2     |  kuchen |    isabell |      12     |   W       |
+-------+----------+----------+----------+----------+ 

bei der tbl kekse allerdings
PHP-Code:
//tbl:kekse
+-------+----------+----------+
|    
id    |    name  |  gewicht |  
+-------+----------+----------+
|    
1     |    keks   |    100     |
|    
2     |  kuchen |    600     |
+-------+----------+----------+ 
SpacePilot ist offline  
Alt 29.06.2011, 20:47  
Moderator
 
Benutzerbild von Chriz
 
Registriert seit: 11.05.2008
Beiträge: 6.266
Chriz ist ein wunderbarer AnblickChriz ist ein wunderbarer AnblickChriz ist ein wunderbarer AnblickChriz ist ein wunderbarer AnblickChriz ist ein wunderbarer AnblickChriz ist ein wunderbarer AnblickChriz ist ein wunderbarer Anblick
Standard

Bitte Scheuklappen ablegen und zuhoeren.
__________________
"Nuschel ich?" - "Was?"
Chriz ist offline  
Alt 29.06.2011, 20:53  
Neuer Benutzer
 
Registriert seit: 05.05.2011
Beiträge: 12
PHP-Kenntnisse:
Anfänger
SpacePilot befindet sich auf einem aufstrebenden Ast
Standard

PHP-Code:
  #######################################################
  
error_reporting(E_ALL E_STRICT);
ini_set("display_errors"1);

function 
mysqlErrorHandler() {
  throw new 
Exception(mysql_error(), mysql_errno());
}

$link mysql_connect($host,$user,$pass) or mysqlErrorHandler();
mysql_select_db($db) or mysqlErrorHandler();

$tables = array();
$sql "SHOW TABLES FOR $db";
$res mysql_query($sql) or mysqlErrorHandler();

while (
$row mysql_fetch_assoc($sql)) {
  
$table $row["tbl_name"];
  
$columns = array();
  
  
$sql2 "SHOW COLUMNS FOR $tbl_name";
  
$res2 mysql_query($sql2) or mysqlErrorHandler();

  while (
$row2 mysql_fetch_assoc($res2)) {
    
$columns[] = $row["Field"];
  }

  
$tables[$table] = $columns;
#######################################################

Verursacht:


Fatal errorUncaught exception 'Exception' with message '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 'FOR kuchen' at line 1' in H:xampplitehtdocsmysql_eingabe_phpeingabe.php:101 Stack trace#0 H:\xampplite\htdocs\mysql_eingabe_php\eingabe.php(109): mysqlErrorHandler() #1 {main} thrown in H:\xampplite\htdocs\mysql_eingabe_php\eingabe.php on line 101 

ab der hälfte bin ich mit der fehlermeldung überfordert.
SpacePilot ist offline  
Thema geschlossen


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
PHP Ausgabe einer SQL Tabelle mit Status invidicult PHP Tipps 2010 5 10.09.2010 15:29
[Erledigt] Intertabellarische Berechnungen, wie? dave303 Datenbanken 13 05.03.2010 11:58
Referenzen von eine Tabelle in die andere Kopieren wali PHP Tipps 2009 3 13.01.2010 21:53
MY-SQL Abfrage nach Daten aus Tabelle 1 die in Tabelle 2 nicht vorhanden sind triple81 Datenbanken 1 25.12.2009 22:46
Bestehende php /Myqsl Tabelle Neben einander aus geben Totti-Totti PHP Tipps 2009 3 21.12.2009 11:00
[Erledigt] Problem bei Ausgabe einer Tabelle 22hase PHP Tipps 2009 16 17.12.2009 13:42
Bilder in Tabelle einfügen Mysql oder direkt?! DKuhn PHP Tipps 2009 3 30.09.2009 10:14
Ausgabe Tabelle erstellen wepse PHP Tipps 2009 13 13.01.2009 14:16
Abfrage und Ausgabe unterschiedlicher Werte einer Tabelle prinzli PHP Tipps 2008 7 23.11.2008 21:28
[Erledigt] Php Mysql ausgabe in Tabelle / Gruppentrennung xitam PHP Tipps 2008 3 28.05.2008 22:03
[Erledigt] mysql abfrage über 4 Tabelle - bis 3 geht, bei der 4. habert Datenbanken 2 08.09.2005 11:59
[Erledigt] Tabelle anlagen mit dynamischen Spaltennamen Datenbanken 3 24.01.2005 14:01
Tabelle in Tabelle ausrichten HTML, Usability und Barrierefreiheit 7 03.01.2005 14:32
Einfache Ausgabe aus Tabelle PHP Tipps 2004 5 29.09.2004 10:19
Ausgabe in Tabelle seb-web PHP Tipps 2004 5 23.09.2004 00:03

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
datenbank ausgabe in tabelle ausrichten, sql datenbank kuchen keks, php mysql spaltenanzahl, php sql ausgaben in tabelle mit kopfzeile, dynamische tabelle php, ausgabe einer dynamischen tabelle in php, php ausgabe in tabellen oder in divs, anleitung zur anlage einer database und einer tabelle in mysql, dynamische tabelle für homepage passwortgeschützt, \show columns\ while mysql

Alle Zeitangaben in WEZ +2. Es ist jetzt 12:35 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum