Seite 1 von 1
Rausfinden welcher User rumklickt
Verfasst: 18.02.2008 17:31
von ersthelfer
Hallo,
ich habe mein Forum in der Form erweitert, dass die User SMS'en an alle schicken können.
Als Absender möchte ich jetzt natürlich die richtige Handynummer des Users eintragen.
Wie bekommen ich nun heraus, welcher User auf den Sende-Button geklickt hat.
Die Handynummer steht in der Datenbank, aber wie komme ich an die User -ID?
Ist evtl. eine blöde Frage, aber ich bin noch Anfänger

Verfasst: 18.02.2008 18:31
von cYbercOsmOnauT
Man kann jetzt nicht ersehen, ob Du selber diese Modifikation erstellt hast, oder nur eingebaut. Die Userid steht im $userdata['user_id'].
Grüße,
Tekin
Verfasst: 19.02.2008 08:31
von Dr.Death
Und bei phpBB3 : $user->data['user_id']
Verfasst: 19.02.2008 23:07
von Seether
Hallo,
mich würde interessieren welche Technik Du zum SMS-Versenden benutzt.
S.
Verfasst: 19.02.2008 23:57
von djchrisnet
eine solche erweiterung für phpBB3 hab ih noch nirgends gesehen. Würde mich wirklich sehr interressieren.
Verfasst: 20.02.2008 06:35
von ersthelfer
Seether hat geschrieben:Hallo,
mich würde interessieren welche Technik Du zum SMS-Versenden benutzt.
S.
Ist relativ einfach. Ich benutze die Schnittstelle von
https://www.fittcom.de/
Muss man natürlich bezahlen.
Ich habe ein Forum zur Dienstplanung realisiert unter anderem gibt es da einen Punkt "SMS an alle".
Da lese ich die Nummern aus der SQL-Datenbank und sende diese an die Schnittstelle
Code: Alles auswählen
$sql = "SELECT username, user_name, user_handy
FROM " . USERS_TABLE . "
WHERE user_id <> " . ANONYMOUS . "
ORDER BY user_name";
if( !($result = $db->sql_query($sql)) )
{
message_die(GENERAL_ERROR, 'Could not query users', '', __LINE__, __FILE__, $sql);
}
if ( $row = $db->sql_fetchrow($result) )
{
$i = 0;
do
{
$username = $row['username'];
$user_handy = $row['user_handy'];
// Achtung!!!
// Diese Zeile versendet echte SMS'en
$url = 'http://www.fittcom.de/cgi/smssend.pl?appid=2&id=%LOGIN%&pwmd5=%MD5PASSWORD%&dnr=%EMPFAENGER%&snr=%ABSENDER%&msg=%TEXT%&msgtype=text&confirmemail=%MAIL%';
// Debug-Mode, hiermit wird keine SMS versendet
// $url = 'http://www.fittcom.de/cgi/smssend.pl?appid=2&id=%LOGIN%&pwmd5=%MD5PASSWORD%&dnr=%EMPFAENGER%&snr=%ABSENDER%&msg=%TEXT%&msgtype=text&confirmemail=%MAIL%&donotsend=1';
$placeholder = array(
'%LOGIN%' => 'Verrate ich nicht'),
'%MD5PASSWORD%' => md5 ('das auch nicht),
'%EMPFAENGER%' => rawurlencode($user_handy),
'%ABSENDER%' => rawurlencode($userdata['user_handy']),
'%MAIL%' => rawurlencode($userdata['user_email']),
'%TEXT%' => rawurlencode(substr($message, 0, 160))
);
$url = strtr($url, $placeholder);
$fp=fopen($url, 'r')
or die ('Connection failed');
while (!feof($fp)) {
$sms_result = fread($fp,128);
}
fclose($fp);
$row_color = ( !($i % 2) ) ? $theme['td_color1'] : $theme['td_color2'];
$row_class = ( !($i % 2) ) ? $theme['td_class1'] : $theme['td_class2'];
$template->assign_block_vars('memberrow', array(
'ROW_NUMBER' => $i + ( $start + 1 ),
'ROW_COLOR' => '#' . $row_color,
'ROW_CLASS' => $row_class,
'USERNAME' => $username,
'HANDYNR' => $user_handy,
'RESULT' => $sms_result)
);
$i++;
}
while ( $row = $db->sql_fetchrow($result) );
$db->sql_freeresult($result);
}
$template->pparse('body');
Das wars schon.
Zur Zeit habe ich aber noch das Problem, dass nicht immer die ganzen SMS'en versendet werden. Sondern nur 15-20 Stück und ich dann eine leere Webseite erhalte
Sieht so aus als würde das Skript abgebrochen werden. Aber ich erhalte keine Fehlermeldung oder wo was.