[dev] Add-on note mod
Forumregels
Sinds 1 januari 2009 wordt phpBB2 niet meer ondersteund.
Onderstaande informatie is verouderd en dient uitsluitend als archief.
Sinds 1 januari 2009 wordt phpBB2 niet meer ondersteund.
Onderstaande informatie is verouderd en dient uitsluitend als archief.
[dev] Add-on note mod
Hallo ik ben een mod aan het maken
( wat het wordt wil ik nog even geheim houden )
Maar ik wil graag het mail adres van de vorige poster in een topic
Iemand eenige iedee hoe ik dit klaar speel ?
Alvast bedankt
( wat het wordt wil ik nog even geheim houden )
Maar ik wil graag het mail adres van de vorige poster in een topic
Iemand eenige iedee hoe ik dit klaar speel ?
Alvast bedankt
waar moet je het hebben? In viewtopic? dan moet dit werken:
Heb het niet getest, maar zo zou moeten werken
(In $prev_email staat dat of false, wanneer eerst bericht in topic is, of het email adres )
Code: Selecteer alles
OPEN: viewtopic.php.
FIND:
for($i = 0; $i < $total_posts; $i++)
{
BEFORE:
$prev_email = false;
AFTER:
if($prev_email !== false)
{
//Dit is de eerste post in dit topic. Echter, wanneer
//$start != 0, dan is het de volgende pagina. Daarom moeten we dat even
//controleren
if($start != 0){
$sql = "SELECT u.user_email FROM " . USERS_TABLE . " u, " . POSTS_TEXT_TABLE . " p WHERE user_id = p.poster_id
ORDER BY p.post_time $post_time_order
LIMIT " . ($start - 1) . ",1 ";
$result2 = $db->sql_query($sql);
if(!$result2)
{
message_die(GENERAL_ERROR,"Could not select previous poster email","",__LINE__,__FILE__,$sql);
}
$email = $db->sql_fetchrow($result2);
$prev_email = $email['user_email'];
unset($email);
}
}else{
$prev_email = $postrow[($i - 1)]['user_email'];
}
(In $prev_email staat dat of false, wanneer eerst bericht in topic is, of het email adres )
Als je het post_id dan hebt, kan je die query die ik heb gebruikt een beetje aanpassen, dat hij naar de post_id kijkt.
Moet dan zoiets zijn als:
Weet niet of zo helemaal goed is, maar tis in ieder geval een opzetje
Moet dan zoiets zijn als:
Code: Selecteer alles
$sql = "SELECT u.user_email FROM ".USERS_TABLE." u, ".POSTS_TEXT_TABLE." pt, ".POSTS_TABLE." p WHERE u.user_id = p.poster_id AND p.topic_id = '$topic_id' AND p.post_id = pp.post_id AND p.post_id < $post_id ORDER BY p.post_id DESC LIMIT 1";
Hmm
is dit dan de mail van de vorige poster ? of lees ik het verkeerd ?
ik ben pas bezig met php echt aan het leren kon het van te voren al wat kleine dingetjes maar mysql nog niet
Weer bedankt voor je snelle replay
Code: Selecteer alles
u.user_email
ik ben pas bezig met php echt aan het leren kon het van te voren al wat kleine dingetjes maar mysql nog niet
Weer bedankt voor je snelle replay
Jep, dat is dan de email van de vorige poster.
Het is eigenlijk heel simpel:
Hij kijkt naar post_id, en topic_id, topic_id moet altijd zelfde zijn, post_id moet lager zijn, als de huide post_id, en dan geef je een LIMIT van 1 op, zodat hij automatische de vorige pakt. Omdat je van die naar de poster_id kijkt(De user_id die dus gepost heeft), en daarbij weer in de USERS_TABLE kijkt, haal je zo de email daarvan op.
Het is eigenlijk heel simpel:
Hij kijkt naar post_id, en topic_id, topic_id moet altijd zelfde zijn, post_id moet lager zijn, als de huide post_id, en dan geef je een LIMIT van 1 op, zodat hij automatische de vorige pakt. Omdat je van die naar de poster_id kijkt(De user_id die dus gepost heeft), en daarbij weer in de USERS_TABLE kijkt, haal je zo de email daarvan op.
Super bedankt, en voor de info
Ik gaat dadelijk naar huis en ga het meteen proberen
Nu heb ik nog een vraag
Is het ook nog mogelijk om de topic starter te kunnen mailen ne naar de huidige
ik was al ver maar .. het werkte van geen meter lukte me dus niet zo goed met mysql
en ik ben zelf ook bezig om 4 checkboxjes te maken waarmee :
Mail vorige poster
Mail topic starter
Mail huidige gebruiker
Standaard ( er wordt naar niemand een email gestuurd )
nu ben ik wat geen klooje ( letterlijke )
Maar er kwam een verpeste template uit
Heeft daar iemand hints voor ofzo ?
Ik gaat dadelijk naar huis en ga het meteen proberen
Nu heb ik nog een vraag
Is het ook nog mogelijk om de topic starter te kunnen mailen ne naar de huidige
ik was al ver maar .. het werkte van geen meter lukte me dus niet zo goed met mysql
en ik ben zelf ook bezig om 4 checkboxjes te maken waarmee :
Mail vorige poster
Mail topic starter
Mail huidige gebruiker
Standaard ( er wordt naar niemand een email gestuurd )
nu ben ik wat geen klooje ( letterlijke )
Maar er kwam een verpeste template uit
Heeft daar iemand hints voor ofzo ?
Ook die is heel simpel
In de TOPICS_TABLE wordt de eerste post opgeslagen, dus daaruit kan je zo die gegevens halen.
Code: Selecteer alles
$sql = "SELECT u.user_email FROM ".USERS_TABLE." u, ".POSTS_TEXT_TABLE." pt, ".POSTS_TABLE." p ,".TOPICS_TABLE." t WHERE u.user_id = p.poster_id AND p.post_id = pp.post_id AND p.post_id =t.first_post_id ORDER BY p.post_id DESC LIMIT 1";
is het mogelijk om
dit te doen
want anders gebruik ik 2 keer $sql en dat niet
dit te doen
Code: Selecteer alles
$blater = "SELECT u.user_email FROM ".USERS_TABLE." u, ".POSTS_TEXT_TABLE." pt, ".POSTS_TABLE." p ,".TOPICS_TABLE." t WHERE u.user_id = p.poster_id AND p.post_id = pp.post_id AND p.post_id =t.first_post_id ORDER BY p.post_id DESC LIMIT 1";