Schrittweises Eintragen(für ein Nachrichtensystem)

Fragen zu allen Themen rund ums Programmieren außerhalb von phpBB können hier gestellt werden - auch zu anderen Programmiersprachen oder Software wie Webservern und Editoren.
Antworten
Benutzeravatar
kratzer54847
Mitglied
Beiträge: 3065
Registriert: 20.01.2003 16:34
Wohnort: Düsseldorf/Hannover/Berlin
Kontaktdaten:

Schrittweises Eintragen(für ein Nachrichtensystem)

Beitrag von kratzer54847 »

hi @ all,

ich habe für die User auf meiner Seite ein kleines Nachrichtensystem gebaut(ähnlich dem wie bei phpBB).
Die User können also Nachrichten verschicken,emofangen usw.

jetzt möchte ich,dass die User mehrmals einzelne Empfänger bestimmen können.
Dazu habe ich ein Textfeld angelegt.

Das soll nun nach folgendem Schema funktionieren:

Eingabe in das Textfeld "User1"
Klick auf "Add bcc"
PN wird an User1 geschickt

danach Eingabe in das Textfeld "User2"
Klick auf "Add bcc"
PN wird an User1 und User2 geschickt

ich hoffe ihr versteht was ich meine...

wie kann ich das realisieren?

mfg Johny
Knowledge Base | MOD Datenbank | Boardsuche | HTML | PHP

Durch die richtige Verwendung dieser Links können viele Fragen beantwortet werden ;-)
PhilippK
Vorstand
Vorstand
Beiträge: 14662
Registriert: 13.08.2002 14:10
Wohnort: Stuttgart
Kontaktdaten:

Beitrag von PhilippK »

Es gibt da relativ genau so viele Lösungen wie Wasser auf dieser Welt ;-)
Du kannst es über ein Cookie auf Client-Seite verwalten, du kannst mit Session (über Cookie oder über URL) arbeiten, du kannst mit versteckten Formularfeldern arbeiten (wohl das einfachste), ...

Gruß, Philipp
Kein Support per PN!
Der Sozialstaat ist [...] eine zivilisatorische Errungenschaft, auf die wir stolz sein können. Aber der Sozialstaat heutiger Prägung hat sich übernommen. Das ist bitter, aber wahr. (Horst Köhler)
Meine Mods
Benutzeravatar
Blutgerinsel
Mitglied
Beiträge: 1801
Registriert: 19.07.2004 18:53
Wohnort: Landkreis Ulm
Kontaktdaten:

Beitrag von Blutgerinsel »

Mir ist dein IST-Zustand nicht klar.....

[ ] PM-System
[ ] Mail-System

Gehe vom Letzteren aus.....

Gut du kannst BCC,CCC Felder anzeigen lassen in einer zusätzlichen Textbox....

Da gibt es Möglichkeiten:
a) Generieren der Felder via document.write(); -> Javascript
b) Standardmäßig ausblenden via CSS Eigenschaft display:none und via Javascript dann einblenden z.B. onclick auf einen Link
c) HTML Formular neu vom Server anfordern

Letzteres ist unperformant.....

Gut in diesen Textfelder gibst du deine Adressen ein.....Mehre z.B. durch Semikolon trennen.....

Wenn du dann die Mails abschickst kannst du via explode nach dem ; ein Array erzeugen was du dann durchläufst und den Header der Mail erzeugst.....

-> http://de2.php.net/manual/de/function.mail.php

Wo ist das Problem?
Benutzeravatar
MrMind
Mitglied
Beiträge: 464
Registriert: 29.11.2003 17:14
Wohnort: Darmstadt/Odw
Kontaktdaten:

Beitrag von MrMind »

Blutgerinsel hat geschrieben:Gut in diesen Textfelder gibst du deine Adressen ein.....Mehre z.B. durch Semikolon trennen.....

Wenn du dann die Mails abschickst kannst du via explode nach dem ; ein Array erzeugen was du dann durchläufst und den Header der Mail erzeugst.....

Dies würde ich auch empfehlen, da die anderen Lösungen nicht das Gelbe vom Ei sind.

Javascript kann deaktiviert sein. Man kann zwar den User via <noscript>Text</noscript> darauf hinweisen, das es aktiviert sein sollte, aber das der User nach so einem Text es nur für diese Mailing Sache aktiviert, ist eher unwahrscheinlich.

Mfg
MrMind
Selbst ist der Coder
Coder unter Linux
Benutzeravatar
kratzer54847
Mitglied
Beiträge: 3065
Registriert: 20.01.2003 16:34
Wohnort: Düsseldorf/Hannover/Berlin
Kontaktdaten:

Beitrag von kratzer54847 »

hoi,

nein es handelt sich wie beschrieben um ein PM-System. :grin:
Knowledge Base | MOD Datenbank | Boardsuche | HTML | PHP

Durch die richtige Verwendung dieser Links können viele Fragen beantwortet werden ;-)
Benutzeravatar
MrMind
Mitglied
Beiträge: 464
Registriert: 29.11.2003 17:14
Wohnort: Darmstadt/Odw
Kontaktdaten:

Beitrag von MrMind »

kratzer54847 hat geschrieben:hoi,

nein es handelt sich wie beschrieben um ein PM-System. :grin:
Naja dann kannste dies trotzdem verwenden @explode mit Merhfach angabe

Als Delimeter würd ich allerdings ein , verwenden ;)

Das sollte dann so ähnlich aussehen:

Eingabe:

Code: Alles auswählen

Hans,Peter,Jörg,Gustav
Code:

$name_array = explode(',',$_POST['name']);

for( $i=0; $i < sizeof($name_array); $i++)
{

//Eintragen in das PM System, Namen können nun durch $name_array[$i] aus der Liste entnommen werden
}[/code]

Mfg
MrMind
Selbst ist der Coder
Coder unter Linux
Benutzeravatar
kratzer54847
Mitglied
Beiträge: 3065
Registriert: 20.01.2003 16:34
Wohnort: Düsseldorf/Hannover/Berlin
Kontaktdaten:

Beitrag von kratzer54847 »

genau so wollte ich das haben,
nur eben halt mit der Besonderheit,dass man,wenn man eine Nachricht an mehrere senden will,man einfach die Namen nacheinander in ein textfeld eingibt,aber nach folgendem Schema:

Eingabe "name1" -> Klick auf "Add Bcc" -> Eingabe "name2" -> Klick auf "Add Bcc" -> ...

die ganzen eingegebenen Namen sollen dann in der "to"-Zeile so angezeigt werden:

"name1, name2..."(aber halt kein Textfeld sondern nur normaler Text)
Knowledge Base | MOD Datenbank | Boardsuche | HTML | PHP

Durch die richtige Verwendung dieser Links können viele Fragen beantwortet werden ;-)
Benutzeravatar
MrMind
Mitglied
Beiträge: 464
Registriert: 29.11.2003 17:14
Wohnort: Darmstadt/Odw
Kontaktdaten:

Beitrag von MrMind »

Mh dann würde ich dir das doch mit JS empfehlen und zwar wie folgt:

1.) Neben der Zeile TO: einen Link setzten welches ein kleines Fenster öffnet wo der User nach den Usern suchen kann an die er die NAchricht senden will.

2.) beim absenden (am besten bezeichnest du den Submit-Button mit der Aufschrift Hinzufügen) wird dann das JavaScript geladen, das so aussehen könnte:


JS-Code

Code: Alles auswählen

function addUser(username)
{
    if( parent.getElementById("to").value != "" )
    {
        username = "," + username;
     }

     parent.getElementById("to").value += username;
}
Ob das so klappt kann ich net sagen, kenne mich selber net so gut aus mit JS, wenn net dann sag bescheid, ich bastel dir dann ne funktionierende JS-Funktion.
Die Methode getElementById ruft dann das Input-Text-Feld auf der Hauptseite. diese Feld muss lediglich noch mit dem id - Attribut gefüttert sein:

Code: Alles auswählen

 <input type="text" name="name" value="" id="to" \>
Und im Formular muss das so aussehen, damit die Funktion klappt:

Code: Alles auswählen

<form onSubmit="addUsername">
im zweiten Fenster.

Mfg
MrMind

PS: für das onSubmit und ähnliche JS Fragen: http://de.selfhtml.org/javascript/sprac ... m#onsubmit
Selbst ist der Coder
Coder unter Linux
Benutzeravatar
Blutgerinsel
Mitglied
Beiträge: 1801
Registriert: 19.07.2004 18:53
Wohnort: Landkreis Ulm
Kontaktdaten:

Beitrag von Blutgerinsel »

Hey,

ob das sinnvoll wäre mit dem BCC, CCC Feldern mag ich fast bezweifeln....
PMs sind normalerweise eh eigentlich immer unsichtbar.....

Aber wenn du eine interne PM Weiterleitung, Kopieren, Archivierung einsetzen willst und kein Support Dienst mit Zuordnungen zu den jeweiligen Bearbeitern....Geclosed, Open etc.

Dann lässt sich das eigentlich leicht anwenden....Letzteres wäre nämlich ein ziemliches ERP Modell :wink:

Gut wie Mr. Mind schon sagte bietet sich auch hier an, dass man via Delimeter soviele SQL Statements erzeugt wie die Eingaben vorgenommen wurden und mit Javascript erspart man sich das lästige eingeben.....

getElementById ist aber unnötig, da man ohnehin ein Formular hat damit geht natürlich

Code: Alles auswählen

document.forms['sendpm'].elements['toinput'].value
Du musst lediglich wissen wie das Fenster heisst von dem das Popup aufgerufen wurde....Aber auch das findest du im SelfHTML....
Antworten

Zurück zu „Coding & Technik“