Ankündigung

Einklappen
Keine Ankündigung bisher.

PHP -> MySQL

Einklappen

Neue Werbung 2019

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

  • PHP -> MySQL

    Hallo zusammen!

    Ich hab da ein paar Fragen und hoffe hier werden sie beantwortet.

    In einem Programm soll man sich an einem Projekt beteiligen können.
    Wenn man nun auf die Projekt-Seite des Programms geht, dann werden dort die verfügbaren Projekte und die dazu benötigten Eingabefelder angezeigt.

    --> so SOLL es sein

    Damit das erreicht wird, muss ich
    1. die Anzahl und die Namen der Projekte auslesen.
    --> jedes Projekt hat eine Tabelle in einer MYSQL-Datenbank und heißt so wie der jeweilige Tabellenname

    2. die Anzahl und die Namen der benötigten Eingabefelder des Projekts auslesen.
    --> die Felder sind die Felder der jeweiligen Projekttabellen

    Fragen:
    1. Wie kann ich feststellen, wieviele Tabellen in einer Datenbank sind, und wie sie heißen?

    2. Wie kann ich feststellen, wieviele Felder in einer Tabelle sind, und wie sie heißen?

    Falls ihr noch mehr Informationen braucht, oder ich mich unklar ausgedrückt hab, einfach sagen!

    Vielen Dank im Vorraus für Antworten!

  • #2
    Das ist schonmal schlechtes Design würde ich sagen.

    Und lass mich raten, du hast nicht ein einziges mal ins Manual geguckt. Die Namen der Funktion weiß ich jetzt auch nicht genau, müßte selbst nachschauen, aber das ist sowieso erstmal dein Part.

    Manual: http://de.php.net/manual/de/

    Kommentar


    • #3
      Das mir den Tabellennamen hab ich jetzt geschafft:

      PHP-Code:
      <?
      /* ### Tabellennamen ermitteln ### */
          $table_name = mysql_list_tables($MYSQL_db);
          $num_rows = mysql_num_rows($table_name);
          for ($i = 0; $i < $num_rows; $i++)
          {
              if ((mysql_tablename($table_name, $i) == "benutzer") || (mysql_tablename($table_name, $i) == "vkadres") || (mysql_tablename($table_name, $i) == "vkstamm"))
              {
                  // do nothing
              }
              else
              {
                  $projekt[$i] = mysql_tablename($table_name, $i);
                  echo "Table: ", $projekt[$i], "
      ";
              }
          }
          mysql_free_result($table_name);
      ?>
      Aber wie geht das mit den Feldnamen?

      Kommentar


      • #4
        Genauso wie du es mit dem Tabellennamen gemacht hast, im Manual nachschauen

        Kommentar


        • #5
          Wow, ein ansich gar nicht so berauschendes Feature kann es ganz schön insich haben...

          Ich hab das Script ja schon gehabt, aber da gab es nur 1 Projekttabelle, also hab ich da nichts variablel gemacht (warum auch) aber jetzt sollen mehrere dazukommen und nun MUSS es variabel werden, was aber nicht ganz so einfach ist wie ich mir gedacht hab...

          Das mit den Tabellennamen hab ich ja mittlerweile schon geschafft, und auch in mein Script eingebaut, das mit den Feldnamen bau ich später ein, zuerst muss ich das hier umbauen:

          Wenn man auf das Script mit den Projekten kommt, dann sieht man die Projekte aufgelistet, und jeweils eine Checkbox und einen Button daneben.
          Wenn man auf den Button klickt, wird die Checkbox angehakt, das Formular abgeschickt, ein neuer Eintrag bei dem Projekt erstellt die Seite neu geladen (passiert sowieso beim Abschicken eines Formulars) und die Aufschrift des Buttons geändert.

          Als es nur 1 Tabelle gab, war das ja auch kein Problem...
          Da hab ich das so gelöst:
          Code:
          function anhaken_02()
          {
          	var on = document.getElementsByName("proj_martin")[0].checked == true;
          
          	if(on)
          	{ document.getElementsByName("proj_martin")[0].checked = false; }
          	else
          	{ document.getElementsByName("proj_martin")[0].checked = true; }
          			
          	 document.FORMULAR.submit();
          }
          --> beim Buttonbetätigen wird die Funktion aufgerufen

          Jetzt kann ich das aber nicht mehr so machen, weil die Namen ja variabel sind.
          Deshalb möchte ich das jetzt so machen:
          PHP-Code:
          <?
          ... onclick='anhaken_00($checkbox_id, $button_id)' ...
          ?>
          --> jedes Projekt hat einen eigenen Button und eine eigene Checkbox, diese heißen $checkbox_id und $button_id
          --> ich kann also 2 Parameter in die Funktion übergeben

          Frage:

          1. Hab ich es geschafft mein Problem klar zu erläutern oder soll ich lieber den Code posten, damit man mir helfen kann dieses Problem zu lösen?

          2. Wie muss ich die Funktion umbauen, damit jetzt nur die zum Button gehörende Checkbox angehakt wird?

          Kommentar

          Lädt...
          X