er mag voor een header helemaal geen output zijn wil je dat wel gebruik dan include()quote:Op maandag 12 juli 2004 14:26 schreef Swetsenegger het volgende:
Hmz, header werkt alleen voor alle HTML? Dus alleen zo...:
<?php
header("location: blabla");
?>
<html>
<head>
.......
</html>
waarom met een tijdsperiode??quote:Op maandag 12 juli 2004 16:22 schreef Ali Salami het volgende:
Controle of hetzelfde al in de db staat van die user, binnen een bepaalde tijdsperiode
Dit is op te lossen door output_buffering te gebruiken. Dan wordt alle output opgeslagen en laat je die aan het einde pas doorsturen naar de browser. Zo kan je je header info altijd plaatsen:quote:Op maandag 12 juli 2004 14:26 schreef Swetsenegger het volgende:
Hmz, header werkt alleen voor alle HTML? Dus alleen zo...:
M.i. wel. Ten eerste omdat je heus wel dubbele berichten mag plaatsen. Zou mooi zijn als ik een post in januari plaats en dat ik, wanneer ik in februari weer eenzelfde post plaats, de meldign krijg dat ik een dubbel bericht plaats.quote:Op maandag 12 juli 2004 16:33 schreef mschol het volgende:
[..]
waarom met een tijdsperiode??
das niet nodig...
Die had ik ook al ergens gelezen inderdaad. Daar ga ik nog mee aan de slag, want de kans op een dubbelpost is redelijk beperkt.quote:Op maandag 12 juli 2004 22:18 schreef Lord_Of_Darkness het volgende:
gewoon als je reply.php opent sessie starten, waneer je post verwijderd hij die sessie, ram je op F5 dan bestaat die sessie dus niet meer, dus moet je eerst weer naar de oude pagina...
simpel truukje
Met deze extra regel:quote:Op zondag 11 juli 2004 11:01 schreef Roönaän het volgende:
[..]
$quote_start = strpos($quote_invoer, '[.quote]');
$quote_einde = strpos($quote_invoer, '[./quote]', $quote_start);
if($quote_start !== false && $quote_einde !== false)
$quote_invoer = substr($quote_invoer, 0, $quote_start).'[..]'.substr($quote_invoer, $quote_einde);
Hmz, ja voor een 'halve' quote zeg maar.....quote:Op dinsdag 13 juli 2004 15:34 schreef Roönaän het volgende:
moet je er wel een escape uit de loop bij maken
if($quote_start !== false && $quote_einde !== false)
$quote_invoer = substr($quote_invoer, 0, $quote_start).'[..]'.substr($quote_invoer, $quote_einde);
else { break;}
vor als er [.quote][/.quote][.quote] staat
Hoe vind het onderscheid tussen url en info plaats? Neem aan een spatie of iets dergelijks?quote:Op woensdag 14 juli 2004 10:26 schreef Swetsenegger het volgende:
Even een snel vraagje.
Voordat ik hem zelf schrijf, bestaat er een PHP functie welke een URL uit een string vist waar naast de URL nog meer info instaat?
Op php.net zie ik het niet zo snel. parse_url, maar dat is volgens mij bedoelt voor een string waar ALLEEN een url instaat?
Ik heb nu dit en dat werkt:quote:Op woensdag 14 juli 2004 10:41 schreef Roönaän het volgende:
[..]
Hoe vind het onderscheid tussen url en info plaats? Neem aan een spatie of iets dergelijks?
tenminste... zolang er maar 1 url in de string staat.quote:$url_start = strpos($invoer, 'www');
$url_einde = strpos($invoer, ' ', $url_start);
if($url_start !== false && $url_einde !== false){
$url = substr($invoer, $url_start, $url_einde);
$invoer=str_replace($url,'<a href="http://'.$url.'" rel="external">'.$url.'</a>',$invoer);
print("$invoer");}
Zo ff beter bekijken, maar wat je feitelijk voorstelt is de $invoer strippen op url's en stukje bij beetje aangepast voor urls plakken in $uitvoer.... Uiteindelijk is $invoer leeg en $uitvoer gevuld.quote:Op woensdag 14 juli 2004 10:54 schreef Roönaän het volgende:
Voorstel doet:
Je maakt een tweede variabele uitvoer, waar je het reeds verwerkte gedeelte in opslaat.
$uitvoer = ''; //in het begin is de uitvoer leeg
while(($url_start = strpos($invoer, 'www')) !== false) //loopen zolang er www staat.
{
$url_einde = strpos($invoer, ' ', $url_start);
if($url_start !== false && $url_einde !== false)
{
$url = substr($invoer, $url_start, $url_einde);
$uitvoer .= substr($invoer, 0, $url_start).'<a href="http://'.$url.'" rel="external">'.$url.'</a>';
$invoer = substr($invoer, $url_einde);
}
elseif($url_start !== false) //url aan het einde van de invoer
{
$uitvoer .= '<a href="http://'.$url.'" rel="external">'.$url.'</a>';
$invoer = '';
}
else
break;
}
$invoer = $uitvoer.$invoer; //restje eraan vast plakken.
Maar een reguliere expressie is denk ik makkelijker, omdat je dan ook alle ftp en http die mogelijk al wel geplaatst zijn ook te pakken krijgt.
quote:$invoer=
Hoi, kijk ook eens op www.123swets.com geweldig mooie site.
wordt
$uitvoer=
Hoi, kijk ook eens op <a href="www.123swets.com" rel="external">www.123swets.com</a> geweldig mooie site.
Vind jij dit overzichtelijk?quote:Op woensdag 14 juli 2004 10:54 schreef Roönaän het volgende:
Voorstel doet:
Je maakt een tweede variabele uitvoer, waar je het reeds verwerkte gedeelte in opslaat.
$uitvoer = ''; //in het begin is de uitvoer leeg
while(($url_start = strpos($invoer, 'www')) !== false) //loopen zolang er www staat.
{
$url_einde = strpos($invoer, ' ', $url_start);
if($url_start !== false && $url_einde !== false)
{
$url = substr($invoer, $url_start, $url_einde);
$uitvoer .= substr($invoer, 0, $url_start).'<a href="http://'.$url.'" rel="external">'.$url.'</a>';
$invoer = substr($invoer, $url_einde);
}
elseif($url_start !== false) //url aan het einde van de invoer
{
$uitvoer .= '<a href="http://'.$url.'" rel="external">'.$url.'</a>';
$invoer = '';
}
else
break;
}
$invoer = $uitvoer.$invoer; //restje eraan vast plakken.
Zeker weten.quote:Maar een reguliere expressie is denk ik makkelijker,
Ja dat begrijp ik ook nog niet ergquote:Op woensdag 14 juli 2004 10:56 schreef Da_Koen het volgende:
Ik denk dat je dat het beste kunt doen met http://nl.php.net/manual/en/function.preg-match.php , maar dan moet je wel de regular expressions snappen, wat mij nog niet helemaal gelukt is......
Ja preciesquote:Op woensdag 14 juli 2004 11:03 schreef Roönaän het volgende:
Dat was toch ook de bedoeling?
Maar inderdaad je gaat aan $invoer knabbelen en elk hapje eindigt op een url. Voor de smaak kauw je even extra op die url met een pepermuntje erbij voordat je hem doorslikt. Aan het eind houd je óf een url over, of nog een kruimeltje.
De uitvoer is dan de invoer met de extra pepermuntjes.
Forum Opties | |
---|---|
Forumhop: | |
Hop naar: |