Automatisch inkrementierendes Profilfeld Mitgliedsnummer?

Hast du Vorschläge, was wir an Admidio noch verbessern könnten ? Hier kannst du uns deine Vorstellung an neuen Funktionen mitteilen.
Antworten
3x3cut0r
Beiträge: 18
Registriert: 20. Jul 2012, 12:13

Automatisch inkrementierendes Profilfeld Mitgliedsnummer?

Beitrag von 3x3cut0r »

Hi
ich hätte gerne ein sichtbares Profilfeld "Mitgliedsnummer", das beim erstellen eines neuen Mitglieds automatisch ausgefüllt wird (kann auch nicht bearbeitet werden) und selbstständig hoch zählt.
Gibt es sowas evtl. schon? oder wie kann ich das realisieren?

Danke für Hilfe
Benutzeravatar
Thomas-RCV
Former team member
Beiträge: 786
Registriert: 1. Aug 2011, 15:06

Re: Automatisch inkrementierendes Profilfeld Mitgliedsnummer

Beitrag von Thomas-RCV »

Ind der profile.php steht dir die Variable $getUserId zur Verfügung, welche du dir ausgeben lassen könntest. Sobald ein User angelegt wurde, verfügt er über eine einzigartige ID.

VG Thomas
3x3cut0r
Beiträge: 18
Registriert: 20. Jul 2012, 12:13

Re: Automatisch inkrementierendes Profilfeld Mitgliedsnummer

Beitrag von 3x3cut0r »

ich hatte mir eher ein profilfeld gewünscht, das schon beim anlegen eines neuen benutzers ausgefüllt und gesperrt für änderungen ist.
ok man könnte ja mit der getUserID den letzten User auslesen und diese inkrementieren.
aber selber hinkriegen tu ich das nicht :cry:
da greife ich glaube ich schon ziemlich in das system ein :|

dachte vielleicht das gibt es schon irgendwie.

danke
salli99
Beiträge: 4
Registriert: 14. Jun 2013, 18:10

Re: Automatisch inkrementierendes Profilfeld Mitgliedsnummer

Beitrag von salli99 »

Hallo zusammen,

vorweg, Danke an die Entwickler für ein tolles Tool, dass nicht jeder Wunsch sofort erfüllt werden kann ist klar und vielleicht kann ich mich ja ein wenig einbringen, auch wenn ich SQL und PHP nur "gebrochen" spreche :D

Ich passe Admidio gerade für die Bedürfnisse unseres Vereins an und auch wir brauchen eine feste Mitgliedsnummer für Versicherungen etc.

Bisher läuft Admidio parallel zu einer Excel Tabelle und ich benötige noch ein oder zwei Sachen, bevor dieses Artefakt endlich ausgemistet wird.

Da vorläufig nur die Geschäftsstelle ein neues Mitglied anlegen kann, wurde die Mitgliedsnummer einfach von Hand vergeben. Das führte dazu, dass die letzte vergebene Nummer auf einen Zettel geschrieben wurde. Das ist natürlich eigentlich Murks.

Also dachte ich an ein Workaround, welches diese letzte Nummer wenigstens in der Profil-Eingabemaske anzeigt. SQL technisch bedeutet das:

Code: Alles auswählen

SELECT max(CAST(usd_value as unsigned)) FROM adm_user_data, adm_user_fields
WHERE usf_name = 'Mitgliedsnummer'
and usf_id = usd_usf_id
Also: Wähle höchsten Wert von "usd_value", umgesetzt auf Zahl ohne Vorzeichen (CAST), usd_value ist ja varchar, wenn ich nicht irre.

Also, das ganze in PHP umgesetzt:

Code: Alles auswählen

$lmgnr = mysql_query("SELECT max(CAST(usd_value as unsigned)) FROM adm_user_data, adm_user_fields WHERE usf_name = 'Mitgliedsnummer' and usf_id = usd_usf_id");
while($row=mysql_fetch_row($lmgnr)){
echo "Letzte Mitgliedsnr.: $row[0]"; 
};
und in die Datei "admidio/adm_program/modules/profile/profile_new.php" eingebaut.

Ich habe das hinter den Kommentar: "Schleife ueber alle Kategorien und Felder ausser den Stammdaten" gepackt.

Jetzt wird mir die letzte verwendete Mitgleidsnummer bei der Eingabe der Daten angezeigt, immerhin eine Erleichterung.


Jetzt habe ich mir mal die ganzen IFs vorgenommen, die nach dem Kommentar:
"code for different field types"

kommen (COUNTRY, CHECKBOX, DROPDOWN usw). Wenn ich den ganzen Code verstanden habe, werde ich mal versuchen obige Nummer+1 als default zu übergeben.

Falls mir jemand da ein wenig durchhelfen kann wäre ich dankbar, vor allem falls JAVA im Spiel ist.

Außerdem will ich noch mal schauen, ob ich statt der "max" Funktion nicht eine absteigende Sortierung hinbekomme mit Limit=1, sollte eigentlich schneller sein.

Grüße
tituzzz
Beiträge: 30
Registriert: 26. Jul 2017, 18:46

Re: Automatisch inkrementierendes Profilfeld Mitgliedsnummer?

Beitrag von tituzzz »

Hallo zusammen,

ich krame mal diesen alten Thread raus.

Gibt es inzwischen eine Möglichkeit oder hat einer eine gute Lösung gefunden, wie durch das Anlegen von Benutzern automatisch eine Mitgliedsnummer angelegt werden kann?

Das wäre ideal und ich habe auch dran gedacht die MEMBERNUMBER Spalte vom Mitgliedsbeitrag-Plugin zu nutzen und einfach auto_increment zu stellen. Dazu benötige ich aber ein int und ich weiss nicht, ob es eventuell Probleme gibt, wenn ich dann Mitgliedsnummern mit dem Plugin erzeuge.

Oder wäre es vielleicht möglich eine Syntax für die Funktion "Mitgliedsnummer erzeugen" zu hinterlegen, die man nicht erneut eingeben muss und dann auf die Startseite einen Button mit "Mitgliedsnummer erzeugen" zu platzieren?

Im Grunde klingt das nach Faulheit, weil man ja auch einfach in das Plugin gehen könnte und dort eben die Syntax hineinschreiben und die Nummern generieren. Allerdings ist da schon einiges bei schief gelaufen und es wird schlicht und einfach oft vergessen.

Ich möchte FormFiller benutzen, damit der Vorstand eine Bescheinigung inklusive Mandatsreferenz für das neu beigetretene Mitglied erzeugen kann. Für die Mandatsreferenz benötige ich allerdings immer die Mitgliedsnummer. Daher wäre es klasse, wenn diese nach dem Anlegen eines neuen Mitglieds bereits vorhanden wäre.

VG

tituzzz
Benutzeravatar
fasse
Administrator
Beiträge: 6170
Registriert: 12. Nov 2005, 16:06

Re: Automatisch inkrementierendes Profilfeld Mitgliedsnummer?

Beitrag von fasse »

Hallo tituzz,

die Idee ist weiterhin gut. Leider hat sich in der Zwischenzeit noch keiner gefunden, der diese Funktion umgesetzt hat.

Gruß
Fasse
Antworten