Ergebnis 1 bis 3 von 3

Thema: Script php-> mySql Emailadressen auf root anlegen

  1. #1
    HTML Newbie
    Registriert seit
    30.08.2007
    Beiträge
    2
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard Script php-> mySql Emailadressen auf root anlegen

    Hallo, ich habe einen Root-Server und möchte da unabhängig vom WebMin ein kleines Tool schreiben mit dem ich meinen Usern ermögliche eine E-Mailadresse kostenlos anzumelden. Bis dahin kein Problem. In die jeweilige tabelle der Datenbank alles eintragen zu lassen war recht leicht- aber im gleichen Schritt muss in eine andere Tabelle auch etwas eingetragen werden. Sprich: der User bibt seinen gewünschten namen in das Formular und das Passwort- jetzt muss der name in die tabelle mail eingetragen werden wobei der eintrag mit einer ID versehen wird (z.B. 62) diese ID ist in der tabelle accounts auch noch nicht vorhanden- also muss das script die ID nehmen die dem namen in der tabelle mail eingetragen wurde und dann di ID in verbindung mit dem passwort dass der user sich ausgesucht hat in die tabelle accounts eintragen. und diese schritte bekomme ich einfach nicht hin-

    hier der export der tabelle mail:
    Code:
    
    
    
    -- 
    -- Tabellenstruktur für Tabelle `mail`
    -- 
    
    CREATE TABLE `mail` (
      `id` int(10) unsigned NOT NULL auto_increment,
      `mail_name` varchar(245) character set ascii NOT NULL default '',
      `perm_id` int(10) unsigned NOT NULL default '0',
      `postbox` enum('false','true') NOT NULL default 'false',
      `account_id` int(10) unsigned NOT NULL default '0',
      `redirect` enum('false','true') NOT NULL default 'false',
      `redir_addr` varchar(255) character set utf8 default NULL,
      `mail_group` enum('false','true') NOT NULL default 'false',
      `autoresponder` enum('false','true') NOT NULL default 'false',
      `spamfilter` enum('false','true') NOT NULL default 'false',
      `virusfilter` enum('none','incoming','outgoing','any') NOT NULL default 'none',
      `mbox_quota` bigint(20) NOT NULL default '-1',
      `dom_id` int(10) unsigned NOT NULL default '0',
      PRIMARY KEY  (`id`),
      UNIQUE KEY `dom_id` (`dom_id`,`mail_name`),
      KEY `account_id` (`account_id`),
      KEY `perm_id` (`perm_id`)
    ) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=14 ;
    
    -- 
    -- Daten für Tabelle `mail`
    -- 
    
    INSERT INTO `mail` (`id`, `mail_name`, `perm_id`, `postbox`, `account_id`, `redirect`, `redir_addr`, `mail_group`, `autoresponder`, `spamfilter`, `virusfilter`, `mbox_quota`, `dom_id`) VALUES (12, 'dummy666', 23, 'true', 62, 'true', 'irgendeineE-Mailadresse', 'false', 'false', 'false', 'none', 51200000, 2);

    und hier der export der tabelle accounts:


    Code:
    
    
    -- 
    -- Tabellenstruktur für Tabelle `accounts`
    -- 
    
    CREATE TABLE `accounts` (
      `id` int(10) unsigned NOT NULL auto_increment,
      `type` varchar(32) character set ascii NOT NULL default 'plain',
      `password` text character set ascii collate ascii_bin,
      PRIMARY KEY  (`id`)
    ) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=63 ;
    
    -- 
    -- Daten für Tabelle `accounts`
    -- 
    
    INSERT INTO `accounts` VALUES (62, 'plain', 0x63616e6e6962616c74726f6a61);
    Wie gesagt- die kreuzverbindung zw. beiden tabellen bekomme ich nicht hin- wie ich jeweils das ganze mit einzelnen formularen einfüge weiss ich- das wäre nicht das problem- aber ich will halt dass das alles automatisch geht- würde ich dem user da 2 formulare hinknallen alá: trage erst deinen namen ein, merk dir die id und trag dann die id mit passworet ein... ich möchte gar nicht darüber nachdenken was für einen stuss die leute machen würden *g*... naja- wäre klasse wenn mir jemand helfen könnte.

    Ach ja- in die tabelle mail soll der user nur den namen als eingabefeld haben und der rest soll als fester wert sein- also zb readonly mit value . die perm_id soll auch nen fester vorgegebener wert sein und die account_id soll eine zahl sein die automatiscvh eingetragen wird...eine fortlaufende wie das feld ID in mail.


    in der tabelle accounts entspricht das feld ID dann dem Feld account_id in mail. sprich der wert aus mail soll in accounts an dieser stelle eingetragen werden.


    naja- danke schon einmal im vorfeld
    Achtung: Dies ist ein alter Thread im HTML und Webmaster Forum
    Diese Diskussion ist älter als 90 Tage. Die darin enthaltenen Informationen sind möglicherweise nicht mehr aktuell. Erstelle bitte zu deiner Frage ein neues Thema im Forum !!!!!
    $content=in_tasse

    if($content[Kaffee]=="yes"){
    mysql_query("INSERT INTO mund (in_tasse)
    VALUES (''$content')",$connect); }

    else...

  2. #2
    Teeny
    Registriert seit
    28.08.2007
    Ort
    Berlin
    Beiträge
    42
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard

    Also wenn ich das richtig verstehe, besteht das Problem lediglich darin, dass Du die in der Account-Tabelle soeben vergebene ID ermitteln und in der mail eintragen möchtest(?)
    In der Tabelle mail benötigst Du eine Spalte accountID
    Nachdem Du Account gespeichert hast, kannst Du die soeben vergebene ID mit der Funktion mysql_insert_id ermitteln.
    Trägst Du diese in der Tabelle mail in der SPalte accountID ein, so hast Du deine Verknüpfung schon erstellt.
    Die Daten kannst Du über ein Formular erfragen, die Auswertung der Daten erfolgt halt in mehreren Schritten.
    Computer können schneller rechnen als wir, deshalb machen sie auch mehr Fehler

  3. #3
    HTML Newbie
    Themenstarter

    Registriert seit
    30.08.2007
    Beiträge
    2
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard

    aaalso- aus der accounts soll ID ermittelt werden und in account_id in mail eingetragen werden...



    also genau genommen sieht es so aus- ich habe ja den server auf dem ein administrationsprog installiert ist- das will ich aber umgehen und dennoch seine datenbanken nutzen. die felder sind also vorgegeben. zuerst soll der user sich in dem script das ich plane eine e-mailadrfesse in die DB des administrationsprogrammes eintragen können.- ich sagte webmin- ist natürlich stuss... es ist Plesk 8.2 ..

    das müsste dann fiolgender massen vorgehen. ich gebe im formular alle daten vor ausser dem namen und das passwort.

    die e-mailadressen und sonstigen informationen stehen in plesk in 2 datenbanken die ich schon identifiziert habe- connecten kann ich auch problemlos- so, folgende werte sind frei wählbar vom user: name der in der emailadresse verwendet werden soll. also bsp. frank (@meinserver.de gebe ich in einem readonly feld vor) und das passwort. alle anderen werte sind fest.

    in der tabelle accounts stehen die werte ID und passwort . also muss in diese tabelle ein wert frei sein für den user: passwort.

    in tabelle mail stehen alle andeen werte- da muss nur das feld mail_name für den user frei sein- alles andere wird vorgegeben.


    das feld account_id in mail muss den gleichen wert enthalten wie das feld ID in accounts. logischerweise darf jede ID nur einmal vergeben sein- und demzufolge muss account_id ebenfalls ein unikat sein.

    das formular müsste also meiner meinung nach folgenden ablauf haben:

    user gibt passwort ein - klickt senden- das formular connectiert zur tabelle accounts und trägt sowohl das vom user gewählte passwort ein als auch die destgelegten unabänderbaren werte die in den readonly -feldern stehen.

    das tabellenfeld ID in accounts ist auto_increment wird dann also automatisch mit einem wert gefüllt der in der tabelle nicht vorhanden ist-

    jetzt kommt der user weiter- er muss nun in ein formular den namen eingeben den er gerne hätte- prüfungen ob schon vorhanden oder so folgen dann - nun muss das formular den wert ermitteln der in accounts ID an DER stelle steht in der das passwort eingetragen wurde. - ist also dieser wert ermittelt und eindeutig zugeordnet (es muss ja die tabellenzeile und id gewählt werden die der user auch wirklich eingetragen hat damit er auch sein passwort ntzen kann- ist also nun dieser wert aus ID in accounts ermittelt muss das formular DIESEN dann in account_id in mail eintragen- und zusätzlich natürlich auch die anderen werte wie der name den der user gewählt hat.



    und ich habe das hauptproblem nicht mehr mit dem connectieren zur db und dem switch zw. den beiden verschedenen tabellen innerhalb diesr DB sondern darin sicher zu gehen dass bei der ermittlung der ID aus accounts auch WIRKLICH DEr wert ermittelt wird den der user gerade eben zugetailt bekommen hat als er das passwort gewählt hat und dass dieser Wert dann auch wirklich in das feld account_id in mail eingetragen wird.

    alles andere bekomme ich schon relativ gut hin... ist noch nicht perfekt und an den prüfungen ob die eingaben auch nur die erlaubten zeichen enthalten und ob der anme schon vergeben ist oder nicht muss ich noch arbeiten- aber diese ermittlung der ID die zuletzt vergeben wurde und das eintragen dieser in account-id ... da hänge ich so was von total in der luft.....

    aber danke auch schon mal für deine antwort. die hat bei mir zumindest was die querverbindungen der tabellen anbelangt ja schon ne menge gebracht...wenn du jetzt mein letztes problem auch noch lösen kannst bzw. mir den nötgen denkanstoss gibst knutsche ich dich mal so rein virtuell und platonisch
    $content=in_tasse

    if($content[Kaffee]=="yes"){
    mysql_query("INSERT INTO mund (in_tasse)
    VALUES (''$content')",$connect); }

    else...

Ähnliche Themen

  1. MySQL Probleme mit Script
    Von BLeeK im Forum PHP Forum - Apache - CGI - Perl - JavaScript und Co.
    Antworten: 5
    Letzter Beitrag: 13.08.2008, 14:39
  2. Script: Steckbrief mit und ohne MySQL
    Von Rocco im Forum Script-Archiv
    Antworten: 51
    Letzter Beitrag: 11.09.2007, 09:27
  3. per PHP neue MySQL-Datenbank und MySQL-Benutzer anlegen
    Von sudeki05 im Forum PHP Forum - Apache - CGI - Perl - JavaScript und Co.
    Antworten: 3
    Letzter Beitrag: 15.04.2007, 19:40
  4. Zope / MySQL /1und1 64bit root-Server?
    Von Viperman im Forum Zope & Plone - das deutsche Hilfeforum
    Antworten: 0
    Letzter Beitrag: 29.03.2007, 19:52
  5. mySQL tabelle anlegen...
    Von SonicChriz im Forum PHP Forum - Apache - CGI - Perl - JavaScript und Co.
    Antworten: 2
    Letzter Beitrag: 14.10.2005, 21:43

Stichworte

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •