Eine Frage eines Anfängers

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Eine Frage eines Anfängers

    Meine lieben, kaum im Forum und schon stelle ich komische Fragen

    Nun da ich weiß, dass bei Fehlersuche so viele Infos wie möglich nötig sind, versuche ich hier alles niederzuschreiben, was mir aufgefallen ist.

    Was ist mein Problem?
    Ich schreibe zur Zeit an einer Seite für meine Gaming-Gilde. Soweit läuft auch schon alles, sprich User können sich ein Konto erstellen, einloggen usw. Alles fein. Aber es gibt ein (wohl für Profis) kleines Problem. Ich habe eine Form, welche in einem dropdown Menü, Einträge meiner hinterlegten Schiffe anzeigt. Die Seite überprüft dabei, wer angemeldet ist und speichert, nach dem man auf Speichern drückt, die Daten aus der Tabelle schiffe in die Tabelle mitglieder_schiffe. Als Zuorndung wird hier der Username mit in die Tabelle mitglieder_schiffe gespeichert, sodass jeder User sich die Schiffe in seinem eigenen Hangar speichern kann. Die Masterdaten der Schiffe, also Name, größe usw. werden von den Admins in der Tabelle schiffe gespeichert.

    Das abspeichern der Daten in die Tabelle mitglieder_schiffe klappt, ebenso wird der Username abgespeichert. Wenn ich aber nun über die Seite mitglieder_schiffe_uebersicht.php versuche, die Daten abzufragen, wird mir auf dem Live-Server nur die Überschrift, aber nicht die Daten aus der Datenbank angezeigt.

    Auf meinem Lokalen Server, läuft es aber 1A. Beide Server verwenden PHP 8.1.

    Nun Frage ich mich, wo liegt der Fehler?

    Ich habe auf dem Live-Server mal den Test mit dem include gemacht, bringt nichts. Lokal läuft es. Rufe ich die Test-Datei x.php direkt über den Browser auf, werden auch alle Daten auf dem Live-Server angezigt (ohne Style) - also direkt als HTML bzw. PHP.

    Richtig (auf dem Lokal Server) sieht es so aus:
    Klicke auf die Grafik für eine vergrößerte Ansicht

Name: ship1.png
Ansichten: 472
Größe: 11,4 KB
ID: 1046333

    Bei dem Live-Server sieht man nur die Überschrift. Und auch die Farben.

    Klicke auf die Grafik für eine vergrößerte Ansicht

Name: ship2.png
Ansichten: 467
Größe: 7,4 KB
ID: 1046334

    Ich hoffe ich konnte mich verständlich ausdrücken. Bei Fragen immer fragen. Vielen dank

    Hier der Code:

    PHP-Code:
    <!DOCTYPE html>
    <html>
    <head>
    <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />

        <title>Mitglieder Schiffsübersicht</title>
        <style>
            body {
                background-color: #001f3f;
                color: white;
                font-family: Arial, sans-serif;
            }

            .schiff-container {
                width: 150px;
                margin: 20px;
                padding: 10px;
                background-color: #003366;
                border-radius: 5px;
                text-align: center;
            }

            .schiff-image {
                width: 120px;
                height: 60px;
                margin-bottom: 10px;
            }

            .schiff-link {
                color: #FF851B;
                text-decoration: none;
            }
        </style>
    </head>
    <body>
        <h1>Mitglieder Schiffsübersicht</h1>
        <?php
        
    include('db_config.php');
        
    session_start();

        
    $bname $_SESSION['bname'];

        
    // SQL-Befehl, um Schiffsdaten für den eingeloggten Benutzer abzurufen
        
    $result $conn->query("SELECT * FROM mitglieder_schiffe WHERE bname = '$bname'");

        
    // Daten aus der Tabelle anzeigen
        
    while ($row $result->fetch_assoc()) {
            
    $schiffname $row['schiffname'];
            
    $schiffimage $row['schiffimage'];

            
    // Bildpfad zum Schiffsimage erstellen
            
    $imagePath "/admin/uploads/" $schiffimage;

            echo 
    '<div class="schiff-container">';
            echo 
    '<img class="schiff-image" src="' $imagePath '" alt="Schiffsbild"><br>';
            echo 
    '<a class="schiff-link" href="schiff_detail.php?schiffname=' $schiffname '">' $schiffname '</a>';
            echo 
    '</div>';
        }
        
    ?>

    </body>
    </html>​

  • #2
    Ich tippe auf
    PHP-Code:
    session_start();​ 
    Vor session_start darf keinerlei Ausgabe passieren, du gibst ab schon reichlich HTML-Code aus. Also
    PHP-Code:
    <?php session_start(); ?>
    vor
    HTML-Code:
    <!DOCTYPE html>
    setzen.
    Und solange dein Script nicht fertig ist, sollte das sogar so aussehen:
    PHP-Code:
    <?php
       error_reporting
    (E_ALL);
       
    ini_set('display_errors'true);
       
    session_start();
    ?>
    PHP gibt dir so eventuelle Probleme aus, die du sonst nur schwer finden kannst.

    Kommentar


    • #3
      Hallo scatello, danke für deine Antwort. Ich werde morgen mal das Script anpassen. Heute macht das keinen Sinn mehr, sehe den Wald vor lauter Bäumen nicht mehr. Ich werde mich morgen wieder ran setzen und bescheid geben, was dabei raus gekommen ist. Vielen Dank und einen schönen Abend.

      Kommentar


      • #4
        Ich wollte nun ein Update geben. Ich hatte heute Morgen schnell mal das Script mit Hilfe von dir angepasst - es läuft nun. Vielen Dank für deine Mühe.

        Kommentar

        Lädt...
        X