PHP ID ausgeben (in einem While)

gfeschu

Ensign
Registriert
Aug. 2010
Beiträge
147
Hallo zusammen.

Ich habe eine Website übernommen, die noch in der Startphase ist. Das Grundkonzept wurde bereits erledigt. Also Detailspezifikation (ERM etc.)

In einer Tabelle die angezeigt wird bestehen verschiedene Spalten. zB. Status oder Kosten.
Jetzt soll ich dazu noch die ProjektID ausgeben.

Die Datenbank befindet sich im phpmyadmin. Damit die Spalte ID ausgelesen wird muss ich es in der DB in "Spalte" als ID speichern. Und angeben dass es sich um eine Zahl handelt.

Die ID wird dann dank der While-Schlaufe automatisch in der Tabelle angezeigt. Aber wie kann ich die ID (die in der DB "Projekt" als "projekt_id" gespeichert wird) anzeigen lassen. Ich muss die irgendwie verbinden können. Oder soll ich probieren dass die Projekt_ID auch bei ID gespeichert wird? projekt_id wird per auto_increment gespeichert.

So langsam bin ich am verzweifeln. Habe schon einiges ausprobiert, aber ausser Manuell die Tabelle anzuzeigen hat nichts geklappt.
Weil ich den Code sauber und korrekt halten muss, ist das Manuell anzeigen aber leider nicht einsetzbar.

Versteht ihr mein Problem? Sorry ist etwas komplex. Habe auch selber noch etwas schwierigkeiten mit dem Verständniss der DB und des Codes.

Danke vielmals und lieber Gruss,
gfeschu
 
Überprüfe zunächst ob "project_id" in der Select Anweisung des PHP/SQL Codes überhaupt abgefragt wird. Dann muss eine Variable für dieses Array definiert werden um in der While Schleife verwendet zu werden. Am besten du postest mal die SELECT Anweisung hier.
 
Kannst du mal nen Screenshot von deiner DB-Struktur zeigen, und sagen, was du davon auslesen willst?

Kann dir im Moment nicht ganz folgen, wo die ID und wo die projekt_id stehen sollen.
 
Zuletzt bearbeitet:
@Complication

Also das Query bzw SQL Befehl zu schreiben und dann auch anzeigen zu lassen, kann ich ohne Probleme. Nur möchte ich das vorgegebene System einhalten.



<tr class="head">
<?php


if ( isset ( $_GET["ansicht"] ) )
{

$result_spalte = mysql_query (" SELECT * FROM `spalte` AS `s`, `spalte_ansicht` AS `sa`, `ansicht` AS `a`
WHERE s.spalte_id = sa.spalte_id
AND a.ansicht_id = sa.ansicht_id
AND a.ansicht_id = " . $_GET["ansicht"] . "
ORDER BY sa.position");

while ( $data_spalte = mysql_fetch_array($result_spalte) ) {
echo ('<td> <a class="sort" href="?sortway=' . $sortway_new . '&sortby=' . $data_spalte["spalte_id"] . '&' . $get . '">' . $data_spalte["spalte_name"] . '</a> ');

if ( $data_spalte["spalte_id"] == $sortby )
{

echo (' <img src="../image/bullet_arrow_' . $sortway . '.png" alt="" /> ');

}
echo ('</td>');
}


} else {
$result_spalte = mysql_query (" SELECT * FROM `spalte`
ORDER BY `spalte_id`");

while ( $data_spalte = mysql_fetch_array($result_spalte) ) {
echo ('<td>');
if ( $sortby == $data_spalte["spalte_id"] )
{
echo ('<a class="sort" href="?sortway=' . $sortway_new . '&sortby=' . $data_spalte["spalte_id"] . '&' . $get . '">' . $data_spalte["spalte_name"] . '</a> ');
} else {
echo ('<a class="sort" href="?sortway=' . $sortway . '&sortby=' . $data_spalte["spalte_id"] . '&' . $get . '">' . $data_spalte["spalte_name"] . '</a> ');
}

echo ('</td>');
}

}

echo ('<td colspan="3"> Aktion </td>');


?>
</tr>



Das wäre noch der Code der die Spalten auswertet und anzeigt.

Projekt wird nur die projekt_id und der Timestamp aufgeführt.
Spalte muss man angeben welche Spalten angezeigt werden können. Ich muss dort ID stehen lassen.
In Spalte_Projekt werden alle Daten gespeichert. Man wählt den Typen aus (zb Dropdown und so. Es ist sehr komplex aufgebaut.

Hoffe die Screenshots und der Code können weiterhelfen.

Danke und Gruss
 

Anhänge

  • projekt.jpg
    projekt.jpg
    104,4 KB · Aufrufe: 131
  • spalte.jpg
    spalte.jpg
    31 KB · Aufrufe: 141
  • spalte_projekt.jpg
    spalte_projekt.jpg
    101,7 KB · Aufrufe: 141
Die Website ist nicht aufgeschaltet und wird auch nie öffentlich aufgeschalten werden, nur intern. Eine Art Sharepoint.
Also sind Zugriffe darauf gesichert. Niemand ausser mir und meinem Arbeitskollegen hat Zugriff darauf.
Oder wieso meinst du?
 
Dennoch.
Grundsätzlich, unabhängig des Einsatzortes gilt es: Traue keinen Daten.
Überprüfe sie auf Plausabilität und baue keine leichtsinnsfehler die große Probleme verursachen könnten hinein.
 
Okay, was meint ihr denn genau?
Sorry hatte einen harten Tag und bin müde. Versteh nicht mehr alles :p

Lg
 
Kugg dir doch einfach mal die Beispiele auf Wikipedia an und vergleiche es mit denen aus deinem Quellcode. Dann wirst du schon merken wo das Problem liegt.

Übrigens: Die meisten Angriffe kommen nicht von bösen Hackern aus dem Internet, sondern von betriebsinternen Personen.
 
Okay, habs gesehen. Dann haben wir es in der Informatikschule bereits falsch gelernt.
Habe den Code zwar übernommen, aber wusste es selber auch nicht.
Danke vielmals, werde das bei nächster Gelegenheit bereinigen. Ist ja bei PHP nicht sonderlich schwer. :)

Weiss jemand bei dem Problem wegen der ID ausgeben weiter?

Bereits jetzt, vielen Dank. ;)
 
Ich habe ehrlich gesagt dein Problem nicht verstanden.
Du hast eine Tabelle (mit Bildern belegt :D) und welche ID willst du ausgeben?

Wird denn überhaupt ein Ergebnis über MySQL geliefert?
Was kriegst du gleich am Anfang innerhalb der While-Schleife ausgegeben, wenn du hier:
PHP:
print_r($data_spalte);
einsetzt?

Ich vermute du kriegst ein leeres Resultat zurück und findest deshalb auch nie eine ID :-)
Was dir vielleicht auch helfen würde, wäre: MySQL
 
Zuletzt bearbeitet:
Zurück
Oben