WinFuture-Forum.de: Echo aus MySQL in Tabelle - WinFuture-Forum.de

Zum Inhalt wechseln

Nachrichten zum Thema: Entwicklung
Seite 1 von 1

Echo aus MySQL in Tabelle


#1 Mitglied ist offline   PaulF 

  • Gruppe: Mitglieder
  • Beiträge: 9
  • Beigetreten: 15. Juli 15
  • Reputation: 0

geschrieben 15. Juli 2015 - 10:14

Hallo. Mein Versuch zeigt rein garnichts, auch keine Fehlermeldung.
Es ist bestimmt irgendwo bei der Tabelle etwas falsch aber ich komme nicht drauf,
vielleicht kann mir einer von euch helfen?

<html> 
<head> 
<meta http-equiv="content-type" content="text/html; charset=utf-8">
</head> 
<body> 
<dl> 

<style type="text/css">
body   { background-color: #abc; }
a:link   { color: red; text-decoration: none; text-underline: none; }
p    { background-color: lightgreen; }
.tg  {border-collapse:collapse;border-spacing:0;}
.tg td{font-family:Arial, sans-serif;font-size:14px;padding:20px 20px;border-

style:solid;border-width:1px;overflow:hidden;word-break:normal;}
.tg th{font-family:Arial, sans-serif;font-size:14px;font-weight:normal;padding:20px 

20px;border-style:solid;border-width:1px;overflow:hidden;word-break:normal;}
</style>

    <?php 
     error_reporting(E_ALL);

     $intDbId = (isset($_GET['id'])) ? sprintf('%d', $_GET['id'] ) : 0;
     $intDbId = max(0,$intDbId);

    mysql_connect("xxxx", "xxxxx", "xxxxx") or die (mysql_error ()); 

    mysql_select_db("xxxxx") or die(mysql_error()); 
  
$strSQL = "SELECT * FROM aufgabe WHERE id='" . $intDbId . "';";
$ausgabe = mysql_query($strSQL); 
while($ausgabe = mysql_fetch_array($strSQL)){

echo "<table style='float:left; margin-left:20px; margin-bottom:10px' border='1'>";
echo "<tr>";
echo "<th>Kuerzel</th><th>Nachname</th><th>Vorname</th><th>Geburtsdatum</th><th>Buchnummer</th>";
echo "</tr>";  
  echo "<tr>";
    echo "<td>".$ausgabe['kuerzel']."</td>";
    echo "<td>".$ausgabe['nachname']."</td>";
    echo "<td>".$ausgabe['vorname']."</td>";
    echo "<td>".$ausgabe['gebdatum']."</td>";
    echo "<td>".$ausgabe['Buchnummer']."</td>";    
    echo "</tr>";
  }
 
echo "</table>";
 } 

    mysql_close(); 
    ?> 

    </dl> 
    <hr>
    <p><center><a href="index.php">Zurück zur Startseite</a></center></p> 
    <hr>
    </body> 

    </html>



Danke für jeden Hinweis oder richtigen Schnippsel.


Paul

P.S.: Ein großer Teil des Codes stammt glaube ich sogar von hier.

Dieser Beitrag wurde von PaulF bearbeitet: 15. Juli 2015 - 10:17

0

Anzeige



#2 Mitglied ist offline   RalphS 

  • Gruppe: aktive Mitglieder
  • Beiträge: 8.887
  • Beigetreten: 20. Juli 07
  • Reputation: 1.126
  • Geschlecht:Männlich
  • Wohnort:Zuhause
  • Interessen:Ja

geschrieben 15. Juli 2015 - 11:21

Schon mal in den generierten Quellcode geschaut (also im Browser unter "Quelltext anzeigen")?

Denn momentan ist leider noch nicht klar, woran es liegt: Verbindung, Authenzifizierung am DB-Server, Abfrage der Daten... oder der Anzeige derselben.


"Code zusammenkopiert" macht mir ehrlich gesagt etwas Sorgen. Weißt Du, was Du da tust?
"If you give a man a fish he is hungry again in an hour. If you teach him to catch a fish you do him a good turn."-- Anne Isabella Thackeray Ritchie

Eingefügtes Bild
Eingefügtes Bild
0

#3 Mitglied ist offline   PaulF 

  • Gruppe: Mitglieder
  • Beiträge: 9
  • Beigetreten: 15. Juli 15
  • Reputation: 0

geschrieben 15. Juli 2015 - 11:24

Es liegt definitiv an der Anzeige der Tabelle. Nunja, ich klaube mir so zusammen was ich brauche.
Es ist ja nur die eine Datei die ich zum laufen kriegen muss, daher geht das schon. Den Quelltext habe ich schon angesehen, er ist leer wie die Seite selbst.

$strSQL = "SELECT * FROM aufgabe WHERE id='" . $intDbId . "';";
$ausgabe = mysql_query($strSQL); 
while($ausgabe = mysql_fetch_array($strSQL)){

echo "<table style='float:left; margin-left:20px; margin-bottom:10px' border='1'>";
echo "<tr>";
echo "<th>Kuerzel</th><th>Nachname</th><th>Vorname<
/th><th>Geburtsdatum</th><th>Buchnummer</th>";
echo "</tr>";  
  echo "<tr>";
    echo "<td>".$ausgabe['kuerzel']."</td>
";
    echo "<td>".$ausgabe['nachname']."</td>
";
    echo "<td>".$ausgabe['vorname']."</td>
";
    echo "<td>".$ausgabe['gebdatum']."</td>
";
    echo "<td>".$ausgabe['Buchnummer']."</td>
";    
    echo "</tr>";
  }
 
echo "</table>";
 } 




irgendwo hier ist der Fehler.
0

#4 Mitglied ist offline   RalphS 

  • Gruppe: aktive Mitglieder
  • Beiträge: 8.887
  • Beigetreten: 20. Juli 07
  • Reputation: 1.126
  • Geschlecht:Männlich
  • Wohnort:Zuhause
  • Interessen:Ja

geschrieben 15. Juli 2015 - 11:47

Syntaxfehler. Da sind zwei geschweifte Zu-Klammern und aber nur eine Auf.

Wenn Du nicht schon hast: besorg Dir eine lokale PHP-Installation, die Du über die Kommandozeile verwenden kannst. Dann kriegst Du auch solche Fehler angezeigt.

Außerdem: das mysql-Modul hat Status Deprecated. Verwende mysqli.
"If you give a man a fish he is hungry again in an hour. If you teach him to catch a fish you do him a good turn."-- Anne Isabella Thackeray Ritchie

Eingefügtes Bild
Eingefügtes Bild
0

#5 Mitglied ist offline   PaulF 

  • Gruppe: Mitglieder
  • Beiträge: 9
  • Beigetreten: 15. Juli 15
  • Reputation: 0

geschrieben 15. Juli 2015 - 12:14

Danke für deine Antwort, leider kann ich damit nicht ganz viel anfangen.
Hast du Links oder vielleicht ausnahmsweise einen richtigen Code für mich?
Ich bin davon ausgegangen das mit error report all, alles dafür getan wurde.

EDIT: Hat sich erledigt

Dieser Beitrag wurde von PaulF bearbeitet: 16. Juli 2015 - 12:38

0

#6 Mitglied ist offline   Holger_N 

  • Gruppe: aktive Mitglieder
  • Beiträge: 5.221
  • Beigetreten: 11. September 10
  • Reputation: 458
  • Geschlecht:Männlich

geschrieben 25. August 2015 - 15:38

Hat sich das jetzt erledigt, weil es nun funktioniert oder ist das Projekt verworfen worden? Mir ist da nämlich noch was Prinzipielles aufgefallen. Wenn die Abfrage über die id ist, also eigentlich ja nur ein Datensatz das Ergebnis möglich ist, macht es doch gar keinen Sinn, dass Ganze über eine while-Schleife abzuarbeiten bzw. bei einer anderen Konstellation, wo mehrere Datensätze möglich wären, würde es widerum keinen Sinn machen, dass der Tabellenkopf mit in der Schleife ist.

(Gegebenenfalls als auch nur so als Tipp für spätere Projekte.)
Bauernregel: Regnets mächtig im April, passiert irgendwas, was sich auf April reimt.
0

#7 Mitglied ist offline   RalphS 

  • Gruppe: aktive Mitglieder
  • Beiträge: 8.887
  • Beigetreten: 20. Juli 07
  • Reputation: 1.126
  • Geschlecht:Männlich
  • Wohnort:Zuhause
  • Interessen:Ja

geschrieben 25. August 2015 - 16:25

So genau hatte ich da gar nicht reingeschaut. :blush:

- Da steckt aber noch mehr Falschiges drin, wenn ich mir den Inhalt so anschau. Das while kriegt die falschen Argumente:

- mysql*_query() kriegt den SQL-Querystring als Argument und gibt die entsprechende Ergebnistabelle in einem $mysqlresult-Objekt zurück
- Über dieses $mysqlresult-Objekt muß man dann Zeile für Zeile iterieren.

Also sowas wie
 $connection =  new mysqli([DSN]);
 $result = $connection->mysqli_query("SELECT Elefant,Löwe FROM Africa");
 while ($row = $result->mysqli_fetch*(...))
 {
  reite_auf($row['Löwe']);
  fange($row['Elefant']);
 }
...
$connection->close()



Sowas in der Art (auch wenn's eher halbherziges PHP ist <_<).

Dieser Beitrag wurde von RalphS bearbeitet: 25. August 2015 - 16:28

"If you give a man a fish he is hungry again in an hour. If you teach him to catch a fish you do him a good turn."-- Anne Isabella Thackeray Ritchie

Eingefügtes Bild
Eingefügtes Bild
0

Thema verteilen:


Seite 1 von 1

1 Besucher lesen dieses Thema
Mitglieder: 0, Gäste: 1, unsichtbare Mitglieder: 0