abonnement Unibet Coolblue Bitvavo
  FOK!-Schrikkelbaas maandag 12 juli 2004 @ 14:26:28 #101
1972 Swetsenegger
Egocentrische Narcist
pi_20573012
Hmz, header werkt alleen voor alle HTML? Dus alleen zo...:

<?php
header("location: blabla");
?>

<html>
<head>

.......
</html>
  FOK!-Schrikkelbaas maandag 12 juli 2004 @ 16:07:27 #102
1972 Swetsenegger
Egocentrische Narcist
pi_20575517
Iemand een idee hoe ik voorkom dat ik met F5 twee maal hetzelfde bericht plaats?
  maandag 12 juli 2004 @ 16:22:37 #103
1607 Ali Salami
Altijd actueel
pi_20575850
Controle of hetzelfde al in de db staat van die user, binnen een bepaalde tijdsperiode
Hatsjoe!
pi_20576093
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>
er mag voor een header helemaal geen output zijn wil je dat wel gebruik dan include()
pi_20576119
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
waarom met een tijdsperiode??
das niet nodig...
pi_20576163
quote:
Op maandag 12 juli 2004 14:26 schreef Swetsenegger het volgende:
Hmz, header werkt alleen voor alle HTML? Dus alleen zo...:
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:
<?php
ob_start(); //starten output buffering
?>

<html>
<head>

.......
</html>
<?php
header("location: blabla");
ob_end_flush();// output buffering stoppen en alles doorsturen naar de client.
?>

Output buffering heeft een aantal basis functies die je het meest zult gebruiken als je het gaat gebruiken ooit:

ob_start(); starten
ob_end_flush(); stoppen en doorgeven naar client
ob_end_clean(); stoppen en wegdonderen
ob_get_contents(); inhoud van de huidige buffer opvragen (String)
  maandag 12 juli 2004 @ 16:42:44 #107
1607 Ali Salami
Altijd actueel
pi_20576341
quote:
Op maandag 12 juli 2004 16:33 schreef mschol het volgende:

[..]

waarom met een tijdsperiode??
das niet nodig...
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.

Daarnaast vergroot het de snelheid van de query ook.
Hatsjoe!
  maandag 12 juli 2004 @ 22:18:14 #108
13957 Lord_Of_Darkness
Ik wel, Jij ook?
pi_20584599
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
  FOK!-Schrikkelbaas maandag 12 juli 2004 @ 23:24:16 #109
1972 Swetsenegger
Egocentrische Narcist
pi_20586245
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
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.

Vandaag heb ik eerst een preview optie ingebouwd
pi_20587400
tvp
(moet PHP leren )
  FOK!-Schrikkelbaas dinsdag 13 juli 2004 @ 15:15:25 #111
1972 Swetsenegger
Egocentrische Narcist
pi_20597822
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);
Met deze extra regel:
while(stristr($quote_invoer,'[quote]')){

Werkt het prima
pi_20598373
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
  FOK!-Schrikkelbaas dinsdag 13 juli 2004 @ 15:37:51 #113
1972 Swetsenegger
Egocentrische Narcist
pi_20598462
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
Hmz, ja voor een 'halve' quote zeg maar.....
Inderdaad wel verstandig.
  FOK!-Schrikkelbaas woensdag 14 juli 2004 @ 10:26:16 #114
1972 Swetsenegger
Egocentrische Narcist
pi_20614204
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?
pi_20614298
=edit=

keek niet goed
  woensdag 14 juli 2004 @ 10:37:30 #116
38056 uniekje
blond... en trots ook
pi_20614379
Kijk eens op www.regexlib.com voor een passende regular expression voor URLs... misschien dat je die kunt gebruiken...
We must believe in luck. For how else can we explain the success of those we don't like?
De Rukkers van het Zuiden!
pi_20614453
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?
Hoe vind het onderscheid tussen url en info plaats? Neem aan een spatie of iets dergelijks?
  FOK!-Schrikkelbaas woensdag 14 juli 2004 @ 10:48:41 #118
1972 Swetsenegger
Egocentrische Narcist
pi_20614588
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?
Ik heb nu dit en dat werkt:
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");}
tenminste... zolang er maar 1 url in de string staat.
Voor een tweede moet ik denk ik gaan werken met een for lus en dan de waarde in een array zetten.... maar dat heb ik nog niet helemaal door, dus dat wordt zoeken

-edit- en uiteraard moet ik nog wat verzinnen voor mailto (op basis van de @ en dan negatief tot de spatie en positief tot de spatie) en heel misschien probeer ik ook url's als forum.fok.nl op te vangen. hoewel dat lastig wordt.

Ow ja, het werkt ook niet wanneer je een url invoert en op submit ramt... want dan ontbreekt de spatie na de .com of .nl of .org

[ Bericht 9% gewijzigd door Swetsenegger op 14-07-2004 10:54:02 ]
pi_20614691
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.
pi_20614720
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......
  FOK!-Schrikkelbaas woensdag 14 juli 2004 @ 11:00:52 #121
1972 Swetsenegger
Egocentrische Narcist
pi_20614826
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.
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.

dus
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.
pi_20614853
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.
Vind jij dit overzichtelijk?
quote:
Maar een reguliere expressie is denk ik makkelijker,
Zeker weten.
  FOK!-Schrikkelbaas woensdag 14 juli 2004 @ 11:02:07 #123
1972 Swetsenegger
Egocentrische Narcist
pi_20614858
quote:
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 dat begrijp ik ook nog niet erg

"zich verdiepen gaat"
pi_20614891
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.
  FOK!-Schrikkelbaas woensdag 14 juli 2004 @ 11:06:10 #125
1972 Swetsenegger
Egocentrische Narcist
pi_20614946
quote:
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.
Ja precies
Maar ik zal eens kijken naar regular expressions, want dat lijkt me in dit geval makkelijker. En anders is jouw optie perfect.
abonnement Unibet Coolblue Bitvavo
Forum Opties
Forumhop:
Hop naar:
(afkorting, bv 'KLB')