DELIMITER |
CREATE FUNCTION get_docroot (domain_in VARCHAR(64)) RETURNS VARCHAR(128)
BEGIN
DECLARE doc_out VARCHAR(128);
SELECT `docroot` FROM `domains` WHERE `domain` = domain_in OR `domain` = (SELECT REPLACE(domain_in, (SELECT LEFT(domain_in, (SELECT LOCATE('.', domain_in)))), '*.')) LIMIT 1 INTO doc_out;
return doc_out;
END|
and call it via
SELECT get_docroot('notspecifiedsubdomain.domain.tld') AS docroot;
or
as
mysql-vhost.sql = SELECT get_docroot('?') AS docroot;
dont forget to give mysql user execute rights for the db!