Ankündigung

Einklappen
Keine Ankündigung bisher.

mysql_fetch_assoc()

Einklappen

Neue Werbung 2019

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

  • mysql_fetch_assoc()

    Hallo zusammen!

    Ich hab ein Script, mit dem man sich in einer Tabelle (MySQL) dazuschreiben kann.

    Dazu muss man nur zuvor mal alle Daten eingegeben haben (wird in Tabelle a und b gepspeichert), dann klickt man nur noch auf "hinzufügen", dann werden alle benötigten Daten aus a und b geholt und in c gespeichert.

    Dabei bin ich aber gleich zu Beginn auf ein Problem gestoßen:
    Wenn der User auf die erwähnte Seite geht, wird dort erstmal abgefragt, ob der User dort schon existiert, und wenn ja soll angezeigt werden, ob er sich wieder löschen lassen will bzw wenn nein ob er sich hinzufügen will.

    Tja, klingt ja ganz einfach, es hat aber einen Haken...
    Wenn der User nicht existiert, dann bleibt die Seite derzeit leer.

    Mein Code ist folgender:
    PHP-Code:
    <?
    $mysql = "SELECT NAME2A, SELECTED FROM ".$tb_name_04." WHERE IDENT = ".$id;
    $result = mysql_query($mysql);

    while($row = mysql_fetch_assoc($result))
    {
    .
    .
    .
    }
    ?>
    --> wenn der User sich noch nicht angelegt hat, dann hat er auch noch keinen Datensatz in $tb_name_04, klar, aber dann wird auch nichts angezeigt...

    Ich vermute mal, das mysql_fetch_assoc() hier die falsche Wahl ist, stimmts?
    Was sollte ich verwenden, damit auch was angezeigt wird wenn die Abfrage keine Datensätze findet?

    Vielen Dank im Vorraus für jede Antwort!

  • #2
    PHP-Code:
    <?php
    $mysql 
    "SELECT NAME2A, SELECTED FROM ".$tb_name_04." WHERE IDENT = ".$id;
    $result mysql_query($mysql) or die(mysql_error().' : '.$mysql);

    if (
    mysql_num_rows()==0) {
     
    // kein Datensatz
    }
    else {
        while(
    $row mysql_fetch_assoc($result))
        {
            
    // ...
        
    }
    }
    ?>

    Kommentar


    • #3
      Also erstmal: DANKE!

      Ich hab jetzt einfach das was angezeigt werden soll (wo man seinen Datensatz hinzufügen kann bzw wieder löschen kann) sowohl in den if- als auch in den else-Teil gepackt.

      Wenn ich jetzt die Seite aufrufe erscheint zwar alles so wie es soll aber auch diese Meldung:
      Warning: Wrong parameter count for mysql_num_rows() in C:\apachefriends\xampp\htdocs\www\home\PROGRAMM\pr ojekte.php on line 21


      Zeile 21:
      PHP-Code:
      <?
      if(mysql_num_rows() == 0)
      ?>
      Warum das jetzt?

      Kommentar


      • #4
        muss das nicht folgendes heissen?

        PHP-Code:
        <?php
            
        if(mysql_num_rows($result) == 0) {
                ...
            } ...
        ?>
        Kann mich auch irren, aber ich glaube du musst die resukt Variable da rein packen

        edit: War schneller :P

        Kommentar


        • #5
          mysql_num_rows($result)

          Kommentar


          • #6
            Ja, sorry.
            Nur getippt, nicht getestet.

            Kommentar

            Lädt...
            X