Beste WHT-ers,
Ik ben voor mijn eigen bedrijf bezig om mijn registratiesysteem en administratie te automatiseren. Nu heb ik gelukkig een grote database met alle domeinnamen en repectievelijke klanten tot mijn beschikking. Deze start heb ik destijds goed gemaakt.
Ook beschik ik over een tabel van 'producten' die ik verkoop. Nu zou ik graag een automatische match maken tussen een domeinnaam en een product.
Voorbeeld:
Een klant neemt een aantal domeinen af.
Een daarvan betreft een .NL domein, daarnaast heeft deze klant ook nog een .COM en een .NET domein.
In de producten tabel heb ik separate producten per TLD, om hier gescheiden verbruiksgegevens voor te kunnen herleiden.
Echter de product tabel beschikt ook over producten als Webhosting en systeembeheer diensten.
Mijn vraag, hoe zou ik automatisch aan de hand van een domeinnaam kunnen herleiden wat voor soort product dit is.
Hier onder een SQL dump van de mijn inziens belangrijkste tabellen in deze:
Code:-- Host: localhost -- Generatie Tijd: 13 Jan 2009 om 15:22 -- Server versie: 5.0.67 -- PHP Versie: 5.2.5 SET SQL_MODE="NO_AUTO_VALUE_ON_ZERO"; -- -------------------------------------------------------- -- -- Tabel structuur voor tabel `DOMAINNAMES` -- CREATE TABLE `DOMAINNAMES` ( `DNid` int(11) unsigned NOT NULL auto_increment, `TLDid` int(11) unsigned NOT NULL default '0', `name` varchar(63) character set utf8 collate utf8_unicode_ci NOT NULL default '', `registrationdate` date NOT NULL default '0000-00-00', `KlantID` int(11) unsigned zerofill NOT NULL default '00000000000', `PrimaryNS` int(11) unsigned NOT NULL default '0', `SecondaryNS` int(11) unsigned NOT NULL default '0', `HolderHandleID` int(11) unsigned NOT NULL default '0', `AdminCHandleID` int(11) unsigned NOT NULL default '0', `TechCHandleID` int(11) unsigned NOT NULL default '0', `ExpirationDate` date NOT NULL default '0000-00-00', `Renew` tinyint(1) NOT NULL default '0', `DroppedDate` date default NULL, `Deleted` int(1) NOT NULL default '0', PRIMARY KEY (`TLDid`,`name`), UNIQUE KEY `IDX_DOMAINNAMEid` (`DNid`), KEY `IDX_DOMAINNAMES2` (`PrimaryNS`), KEY `IDX_DOMAINNAMES3` (`TLDid`), KEY `IDX_DOMAINNAMES4` (`KlantID`), KEY `IDX_DOMAINNAMES5` (`SecondaryNS`), KEY `IDX_DOMAINNAMES6` (`HolderHandleID`), KEY `IDX_DOMAINNAMES7` (`AdminCHandleID`), KEY `IDX_DOMAINNAMES8` (`TechCHandleID`) ) ENGINE=MyISAM DEFAULT CHARSET=latin1; -- -------------------------------------------------------- -- -- Tabel structuur voor tabel `PRIJZEN` -- CREATE TABLE `PRIJZEN` ( `PrijsID` int(11) unsigned NOT NULL auto_increment, `ProductID` int(11) unsigned NOT NULL default '0', `Prijs` float(6,2) NOT NULL default '0.00', `Datum` date NOT NULL default '0000-00-00', `BTWGroepID` int(2) unsigned NOT NULL default '0', PRIMARY KEY (`PrijsID`,`ProductID`,`BTWGroepID`), KEY `IDX_PRIJZEN1` (`ProductID`), KEY `IDX_PRIJZEN2` (`BTWGroepID`) ) ENGINE=MyISAM DEFAULT CHARSET=latin1 ; -- -------------------------------------------------------- -- -- Tabel structuur voor tabel `PRODUCTEN` -- CREATE TABLE `PRODUCTEN` ( `ProductID` int(11) unsigned NOT NULL auto_increment, `Naam` varchar(40) NOT NULL default '', `OmschrijvingKort` varchar(250) default NULL, `Omschrijving` text, `Tabel` varchar(25) NOT NULL default '', `Veld` varchar(25) NOT NULL default '', PRIMARY KEY (`ProductID`), UNIQUE KEY `IDX_PRODUCTEN1` (`ProductID`) ) ENGINE=MyISAM DEFAULT CHARSET=latin1 ; -- -------------------------------------------------------- -- -- Tabel structuur voor tabel `TOPLEVELDOMAINS` -- CREATE TABLE `TOPLEVELDOMAINS` ( `TLDid` int(11) unsigned NOT NULL auto_increment, `extension` varchar(10) NOT NULL default '', `whoisserver` varchar(255) default NULL, PRIMARY KEY (`TLDid`), UNIQUE KEY `IDX_TOPLEVELDOMAINS1` (`TLDid`) ) ENGINE=MyISAM DEFAULT CHARSET=latin1 ;