PHP Conference Nagoya 2025

ezmlm_hash

(PHP 4 >= 4.0.2, PHP 5, PHP 7)

ezmlm_hashВычисляет хеш-сумму, необходимую для EZMLM

Внимание

Функция УСТАРЕЛА с PHP 7.4.0, а в PHP 8.0.0 функцию УДАЛИЛИ. Пользоваться функцией настоятельно не рекомендуют.

Описание

ezmlm_hash(string $addr): int

ezmlm_hash() вычисляет хеш-сумму, необходимую при хранении почтовых списков EZMLM в базе MySQL.

Список параметров

addr

Хешируемый адрес электронной почты.

Возвращаемые значения

Хеш-сумма параметра addr.

Примеры

Пример #1 Вычисляет хеш-сумму и подписка пользователя на что-либо

<?php

$user
= "joecool@example.com";
$hash = ezmlm_hash($user);
$query = sprintf("INSERT INTO sample VALUES (%s, '%s')", $hash, $user);
$db->query($query); // используя интерфейс PHPLIB db

?>

Добавить

Примечания пользователей 3 notes

up
7
Tim in SF
20 years ago
EZ Mailing List Manager (EZMLM) is a mailing list manager which allows users to create their own mailing lists with a single command.

It seems to require qmail.

See:
http://www.ezmlm.org/
http://www.qmail.org/top.html#ezmlm
up
3
thedragon at mediocreshit dot com
17 years ago
ezmlm will add a user to the list from a mail() call if you use the -f extra flag in the function.
Example:

mail($to,$title,$email,$headers,"-tfromemail@example.com");

The extra flag being a -t followed by no space and the email address you want the email to appear as though it's being sent from. I spent hours messing with this to try to allow users to sign up for my mailing list by marking a check box while signing up on my site, ezmlm ignored everything until I threw that extra parameter in there.

Hope this helps.
up
-3
jens at NOSPAM dot rootsy dot nu
19 years ago
This is really ezmlm documentation, but I certanly would have been happy if I found it anywhere during my time of trial. I am not a Linux expert, as you probably will notice, so things I do/did that might sound incredibly stupid to those who do know. I blame hard-to-find documentation :)

I wanted a page where a visitor could add their address to my mailinglist. That shouldn't be too hard, or atleastso I thought...

First I tried mailing the mailinglist. For some reason, the mailinglist didn't see my "From:" -header and it failed miserably.

Then I tried to use system() to call ezmlm-sub, which only produced the error-code 111. That was an access problem. So, I tried making the mailinglist availible to the website, but the change in permissions caused the mailserver to malfunction (as opposed to mailfunction....). It took a while to sort that mess out.

I couldn't find any guide as howto add mysql-support. The big problem was how to know which tables was needed. Apperantly, this is all that is needed:

ezmlm-mktab listname | mysql -u root -p databasename

Then its just adding the mailinglist with mysql-support i qmailadmin. It doesn't seem to allow socket connection to the database, so iptables has to allow local connections to the mysql port.

Hope this helps someone.
To Top