php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger > PHP Tipps 2005-2

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 27.10.2005, 14:19  
Gast
 
Beiträge: n/a
Standard 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!
 
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 27.10.2005, 14:23  
Erfahrener Benutzer
 
Registriert seit: 21.05.2008
Beiträge: 9.937
Zergling-new wird schon bald berühmt werden
Standard

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/
Zergling-new ist offline  
Alt 27.10.2005, 15:10  
Gast
 
Beiträge: n/a
Standard

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?
 
Alt 27.10.2005, 15:12  
Erfahrener Benutzer
 
Registriert seit: 21.05.2008
Beiträge: 9.937
Zergling-new wird schon bald berühmt werden
Standard

Genauso wie du es mit dem Tabellennamen gemacht hast, im Manual nachschauen
Zergling-new ist offline  
Alt 27.10.2005, 16:37  
Gast
 
Beiträge: n/a
Standard

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?
 
 


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
[Erledigt] Kein Ergebnis bei SELECT (MySQL 4.1.9) dr.e. Datenbanken 4 15.06.2008 19:54
[Erledigt] MySQL - ERROR 1044 bei erstellen einer Datenbank _youngenterpriser_ Datenbanken 2 05.02.2008 17:56
Mysql Server Einstellunen Optimieren pchero Datenbanken 3 01.05.2007 19:50
[Erledigt] MYSQL Problem Datenbanken 4 09.02.2006 15:14
Kein Zugriff über ODBC mit der IP-Adresse auf MySql DB Datenbanken 4 09.02.2006 11:04
[Erledigt] Zu blöd um MySQL in PHP einzurichten? Apache Server PHP Tipps 2006 18 30.01.2006 23:39
[Erledigt] Mysql 4.1.x unter php 4.3.9 Datenbanken 3 15.11.2005 13:49
Wieso funktioniert mein MySQL nicht mehr ? Skazi Datenbanken 1 09.11.2005 14:49
Schnittstelle zwischen PHP und MySQL klappt net !!! Datenbanken 16 16.10.2005 14:24
[Erledigt] not allowed to connect to this MySQL server PHP Tipps 2005-2 2 23.09.2005 18:34
Suche Tipps für Persormance-Steigerung (Geld für Nützliches) Beitragsarchiv 18 16.08.2005 10:57
MYSQL läuft nur wenn /tmp auf 777 Datenbanken 5 06.07.2005 08:38
mysql root passwort vergessen Datenbanken 1 29.05.2005 11:33
Access denied for user: '@localhost' / SYSTEM@localhost Datenbanken 0 10.11.2004 20:35
[Erledigt] PHP5 &amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;a m p; MySQL Datenbanken 5 01.08.2004 05:47


Alle Zeitangaben in WEZ +2. Es ist jetzt 08:52 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum

Creative Commons License
Dieser Inhalt ist unter einer Creative Commons-Lizenz lizenziert.