Hallo liebe User und Entwickler,
ich möchte einem (beliebigen) feedback-Formular
im NICHT-php-Bereich, also html-Bereich einer php-Datei
ein Dropdown-Feld hinzufügen,
dass Name, Vorname, Username
aller in einer bestimmten Usergruppe enthaltenen Mitglieder zur Auswahl auflistet,
wobei die Selektion der Usergruppe
am Besten über den access_title der tabelle group_access statt finden sollte,
wenns nicht geht, dass eben über access_id <-> user_ingroup.
Also so würde das ja aussehen, wenn man das Dropdown manuell mit den Namen füllt, was aber leider nicht :'( dynamisch ist.
<tr><td>Ihr(e) Berater(in)</td>
<td>
<select name='berater'>
<option value='1'>Meyer, Peter, pm
<option value='3'>Müller, Josefine, jm
<option value='7'>Muster, Herbert, hm
<option value='9'>Stolz, Sieglinde, sst
</select>
</td></tr>
Bei option value müsste eben die uid rein und
beim Eintrag selbst eben name, vname, uname
wobei mir gerade auffällt, dass es gar keine Vornamen gibt.
Gut, dann muss ich eben noch das Vornamenfeld vname dazumachen, so wie ich meine tabelle bereits um skype erweitert habe...
:( Aber wie man diesen Datenbankinhalt abfragt für eine Usergruppe und dann in das html-Formular reinbekommt und weiterversendet, hab ich so definitiv keinen Ansatz.
:-X Könnt Ihr mir da bitte etwas Hilfestellung geben?
Auf das bisherige Beispiel gemünzt :
<tr><td>Ihr(e) Berater(in)</td>
<td>
<?php
$usergruppe=1; //Hier die Usergruppe (Zahl!)
$qry="SELECT uname, uid FROM ${user_prefix}_users WHERE user_ingroup=${usergruppe}"; ?>
<select name='berater'>
<?php while($row = sql_fetch_assoc($qry))
{
echo '<option value=' . $row['uid'] .'>' . $row['uname'] . '</option>';
}
?>
</select>
</td></tr>
MfG
jubilee
Hallo Jubilee,
das sieht ja hochprofessionell aus, recht herzlichen Dank, ich werd*s morgen gleich ausprobieren, nachdem ich die Frondienste an meiner Buchhaltung erledigt habe....
Gute Nacht
Hallo, jubilee,
bin gerade dabei, das neue Formular zu bauen, leider ist mein dropdown leer.
Ich habe für jedes Formular ein Modul gemacht (wg. der Lang-Variablen später mal), dass auf einen formmailer in einem ordner im pragma zugreift.
Das funktioniert auch schon in meinem Info-Center unter www.paxMMS.de.
die Index.php meines Formularmodul ruft über ein include das eigentliche Formular auf.
Kann es sein, dass deswegen der DB-Zugriff nicht funktioniert?
Meine index.php
<?php
if (!defined("mxMainFileLoaded")) die ("You can't access this file directly...");
require_once("mainfile.php");
$module_name = basename(dirname(__FILE__));
mxGetLangfile($module_name);
$index =1;
global $sitename, $module_name;
include ("header.php");
//GG Seitentitel in ext. Datei
if (@file_exists("themes/knopf/titles/title_".$module_name.".php")){
include ("themes/knopf/titles/title_".$module_name.".php");
} else
if (@file_exists("themes/knopf/titles/title.php")){
include ("themes/knopf/titles/title.php");
} else {
echo "<center><b>"._FORM_TITLE."</b></center><br><br>\n";
}
//GG Seitentitel ende
echo "<br>";
OpenTable();
echo "<center>"._FORM_GERN."</center>";
echo " "
.""._FORM_REQUIRED."";
echo "<table class=\"formmail\" align=\"center\"><tr><td>";
i[color=red]nclude ("form_mm_termin.php");[/color]
echo "</td></tr></table>";
CloseTable();
include ("footer.php");
?>
Der Anfang des externen, im gleichen ordner liegenden Formulars ibis incl. der Zeile mit dem Dropdown sieht so aus:
<?php
if (!defined("mxMainFileLoaded")) die ("You can't access this file directly...");
require_once("mainfile.php");
echo "<form action=\"".GG_PATH_FORMMAIL."/formmail.php\" method=\"post\" enctype=\"multipart/form-data\" accept-charset=\"UTF-8\" name=\"mm_termin\">";
?>
<!-- GG Tabelle drumrum für Rand im Modul drin-->
<input name="subject" type="hidden" class="norm11" value="Terminanforderung für pax:massmode" />
<input name="Thema" type="hidden" class="norm11" id="Thema" value="pax_massmode" />
<input type="hidden" name="sort" value="order:title,env_report,recipient,realname,email,firma,firstname,lastname">
<input type="hidden" name="env_report" value="REMOTE_HOST,HTTP_USER_AGENT,HTTP_ACCEPT_LANGUAGE,HTTP_REFERER,CONTENT_LENGTH,HTTP_COOKIE">
<input type="hidden" name="recipient_bcc" value="g@massmode.net">
<input type="hidden" name="recipient" value="anfrage@massmode.net">
<input type="hidden" name="print_blank_fields" value="false">
<input type="hidden" name="title" value="Infoanforderung - Ihre Eingaben">
<input type="hidden" name="priority" value="3">
<input type="hidden" name="gmt_offset" value="+1">
<input type="hidden" name="email_regex" value="^[_a-zA-Z0-9]+\.?[a-zA-Z0-9]+\@[a-zA-Z0-9]+\.?[a-zA-Z0-9]+\.[a-zA-Z]{1,6}$">
<input type="hidden" name="required" value="email,firstname,lastname,plz">
<?php
//GG Danke-Seite- Url dem conteudomodul eingesetzt -->
echo "<input type=\"hidden\" name=\"redirect\" value=\"".MX_BASE_URL."modules.php?name=Conteudo&pa=showpage&pid=10\">";
?>
<table width="100%" align="center" cellspacing="3" class="form_haupt">
<tr>
<td colspan="5" align="left" class="form_bez_spalte">Nehmen Sie bitte mit mir Kontakt auf
</td>
</tr>
<!--GG Berater-->
<tr>
<td colspan="5" width="100%" align="left">Wählen Sie bitte Ihre(n) Berater(in)
<?php
$usergruppe=2; //Hier die Usergruppe (Zahl!)
$qry="SELECT uid,name,uname FROM ${user_prefix}_users WHERE user_ingroup=${usergruppe}"; ?>
<select name="berater" tabindex="1">
<?php while($row = sql_fetch_assoc($qry)){echo '<option value=' . $row['uid'] .'>'. $row['name'] .' - ' . $row['uname']'</option>';}
?>
</select></td></tr>
<!--GG Berater ende-->
Wenn ich dieses ${user_prefix} durch den tatsächlichen prefix ersetze, ändert sich auch nichts.
Wisst Ihr, warum das nicht geht ( :D Es ist selbstverständlich jemand in der Usergruppe 2, falls jemand fragen wollte....)?
Meint Ihr, es bringt was, wenn ich das Formular komplett auf php unstelle, also alles html in echos etc. packe?
Hallo !
Mach einmal den debug-Mode an und schau ob es Fehlermeldungen gibt
(Debug Mode einschalten und SQL-Fehler anzeigen einschalten)
Mal sehen, was da das Problem ist...
MfG
jubilee
Fehler bezüglich aufgerufener modules.php?name=form_mm_termin
1.
ZitatpragmaMx 0.1.7 Debug-Mode, PHP Error-Reporting (E_ALL) enabled
GET: Array
(
[name] => form_mm_termin
)
2.
Zitat
Parse error: parse error, expecting `','' or `';'' in D:\xampp\htdocs\_px1\modules\form_mm_termin\form_mm_termin.php on line 35
Dort steht:
<?php while($row = sql_fetch_assoc($qry)){echo '<option value=' . $row['uid'] .'>'. $row['name'] .' - ' . $row['uname']'</option>';}
Hinter dem $row['uname'] direkt VOR '<option... fehlt ein Punkt .
Falsch abgeschrieben ;)
<?php while($row = sql_fetch_assoc($qry)){echo '<option value=' . $row['uid'] . '>' . $row['name'] . ' - ' . $row['uname'] . '</option>';}
MfG
jubilee
"Denkste, Puppe" sagt der Berliner....
Nach der punktenden Änderung kein Inhalt im Dropdown.....
ZitatNach der punktenden Änderung kein Inhalt im Dropdown.....
Aber zumindest die Fehlermeldung ist weg .....
Diese Zeile noch anpassen :
Zitat$qry="SELECT uid,name,uname FROM ${user_prefix}_users WHERE user_ingroup=${usergruppe}"; ?>
neu :
Zitat$qry=sql_query("SELECT uid,name,uname FROM ${user_prefix}_users WHERE user_ingroup=${usergruppe}"); ?>
dann klappt das auch ...
Recht recht herzlichen Dank, das funktioniert ja super.....
Was und wie lange muss mann lesen und lernen, um das WARUM des Unterschieds zwischen Select Version 1 und 2 zu wissen, und warum wann welches geht?????
:D
:-\
:o
Liebe Grüsse
:-*
ZitatWas und wie lange muss mann lesen und lernen, um das WARUM des Unterschieds zwischen Select Version 1 und 2 zu wissen, und warum wann welches geht?
Nun Fall1 konnte nicht gehen, da die Query überhaupt nicht ausgeführt wurde.
Dazu ist immer das sql_query erforderlich. Das sql_fetch_assoc dient dazu die Daten die von der Query kommen weiter auzubereiten.
MfG
jubilee