Ik heb een fantastische hint voor je:quote:Op zondag 4 juli 2004 23:35 schreef Swetsenegger het volgende:
Na aanleiding van: [XHTML] Herhalende tekst in XHTML
Heb ik toch maar eens een PHP boek aangeschaft, waar ik toch al een uur in heb gelezen. En inderdaad.... include was de oplossing
Nu wat anders. Op basis van OS wil ik een andere stylesheet gebruiken. Nu wist ik al dat $HTTP_USER_AGENT deze info (meestal) heeft en ik vond een prachtig stukje code:
[..]
Maar ja... dat is op browser, en ik heb de OS info nodig uit HTTP_USER_AGENT.
Sterker nog... ik hoef alleen te weten of er linux in de $HTTP_USER_AGENT voorkomt en zo ja wil ik een alternatieve CSS gebruiken.
Uiteraard zal ik rustig verder lezen in m'n php boek, maar als iemand een hint heeft...
*hint* lees de reacties ook even door *hint*quote:Op vrijdag 9 juli 2004 13:17 schreef SwiffMeister het volgende:
[..]
Ik heb een fantastische hint voor je:
post dit op tweakers die wete alles over dit probleem
quote:Op vrijdag 9 juli 2004 13:15 schreef Murray het volgende:
Is er ook een php equivalent voor de HTML Base tag?
Ik heb al m'n bestanden in /map staan, alleen één staat er in / .
Links kun je dan in html weer werkend krijgen met <base href="map/" />, alleen zijn m'n includes nu verneukt..
Is dat op te lossen?
http://nl2.php.net/manual/en/function.ini-set.phpquote:Op vrijdag 9 juli 2004 17:21 schreef Murray het volgende:
[..]
Er zitten zat zeer getalenteerde PHP'ers op fok. En die zijn in de regel relaxter met n00bs (mits ze de juiste vragen stellen) dan op GoT.quote:Op vrijdag 9 juli 2004 13:17 schreef SwiffMeister het volgende:
[..]
Ik heb een fantastische hint voor je:
post dit op tweakers die wete alles over dit probleem
Bedoel je zoiets?quote:Op vrijdag 9 juli 2004 13:15 schreef Murray het volgende:
Is er ook een php equivalent voor de HTML Base tag?
Ik heb al m'n bestanden in /map staan, alleen één staat er in / .
Links kun je dan in html weer werkend krijgen met <base href="map/" />, alleen zijn m'n includes nu verneukt..
Is dat op te lossen?
Misschien...quote:
quote:Op zaterdag 10 juli 2004 23:42 schreef Swetsenegger het volgende:
En nu kan ik al quoten ook
Binnenkort is het beter als replique...
Ik heb dus mijn response system ook maar vast een naam gegeven... TjapTjoy™
© 2004 Swetsenegger
quote:Op zondag 11 juli 2004 00:03 schreef devzero het volgende:
[..]
[afbeelding]Yes Dan zal ik het domain fok?.nl snel aanvragen of is tjapfok.nl beter? Gouden bergen, the sky is the limit![]()
Welk boek is het Swets,en heb je evt een isbn nr?quote:Op zondag 11 juli 2004 00:09 schreef Swetsenegger het volgende:
[..]
Mjah, voor iemand die een week geleden niets van php afwist vind ik het toch best redelijk
Het ziet er goed uit. Ik heb ook nog steeds het voornemen om php een beetje door te spitten, maar ben nooit verder gekomen dan de basics (aan de andere kant, het lijkt wel veel op perl wat ik wel kan).quote:Op zondag 11 juli 2004 00:09 schreef Swetsenegger het volgende:
[..]
Mjah, voor iemand die een week geleden niets van php afwist vind ik het toch best redelijk
Snel op weg - PHP voor het world wide webquote:Op zondag 11 juli 2004 00:11 schreef fotoloog het volgende:
[..]
Welk boek is het Swets,en heb je evt een isbn nr?
M'n zoon heeft het ook te pakken!
Als je redelijk wat programmeer ervaring hebt, je niet vreemd opkijkt van if (then) else. Je een variabele van een constante weet te onderscheiden en bij integer niet denkt aan een oprecht mens, is het een appeltje-eitje...quote:Op zondag 11 juli 2004 00:14 schreef devzero het volgende:
[..]
Het ziet er goed uit. Ik heb ook nog steeds het voornemen om php een beetje door te spitten, maar ben nooit verder gekomen dan de basics (aan de andere kant, het lijkt wel veel op perl wat ik wel kan).
Die kleine is redelijk slim(2 vwo)quote:Op zondag 11 juli 2004 00:15 schreef Swetsenegger het volgende:
[..]
Snel op weg - PHP voor het world wide web
Auteur is Larry Ulman. ISBN: 90-430-0901-6
Het is een duidelijk boek, met veel voorbeelden maar niet goedkoop.
Maar ik moet er wel bij zeggen dat ik vroegah redelijk in Basic en Assembly heb zitten rommelen. Als je geen enkele programmeer ervaring hebt, wordt het wel lastig denk ik
Wat ik vervelend aan php vind, is dat je je variabelen niet hoeft te declareren. Type-foutjes in je variabele namen (en die wil je juist duidelijk houden ala $bezoekers_gemiddelde) worden dan uiterst moeilijk op te sporen.quote:Op zondag 11 juli 2004 00:17 schreef Swetsenegger het volgende:
De basics dan
Output:quote:Op zondag 11 juli 2004 00:25 schreef devzero het volgende:
[..]
<?php
$variable = 10;
echo $variabele*2;
?>
I love error_reporting(E_ALL)quote:Notice: Undefined variable: variabele in d:\server\www\test.php on line 3
0
Bingo, die zocht ikquote:Op zondag 11 juli 2004 09:26 schreef sylvesterrr het volgende:
I love error_reporting(E_ALL)
Persoonlijk vind ik dat een lelijke constructie. Dan nog maar liever ${naam}quote:Op zondag 11 juli 2004 09:30 schreef Swetsenegger het volgende:
Gewoon $naam= value.
Moeten foutmeldingen wel aan staan in de php.iniquote:Op zondag 11 juli 2004 10:07 schreef devzero het volgende:
[..]
Bingo, die zocht ik
quote:Op zondag 11 juli 2004 10:42 schreef Swetsenegger het volgende:
[..]
Moeten foutmeldingen wel aan staan in de php.ini
Anders voeg je voor de error reporting het volgende toe:
ini_set('display_errors',1);
http://nl2.php.net/manual/en/function.preg-replace.phpquote:Op zondag 11 juli 2004 10:49 schreef Swetsenegger het volgende:
Toc ff hulp nodig.
Met str_replace kan ik bepaalde waarden veranderen. bv :quote vervang je door wat anders.
Maar nu wil ik een string van/tot iets vervangen. Ik weet de van, en de tot, maar niet wat er tussen staat (bv ik wil :quote blablabla :/quote vervangen door [..])
Hoe doe ik dat?
$str = substr($str, 0, $van).$replace.substr($str, $tot);quote:Op zondag 11 juli 2004 10:49 schreef Swetsenegger het volgende:
Toch ff hulp nodig.
Met str_replace kan ik bepaalde waarden veranderen. bv :quote vervang je door wat anders.
Maar nu wil ik een string van/tot iets vervangen. Ik weet de van, en de tot, maar niet wat er tussen staat (bv ik wil :quote blablabla :/quote vervangen door [..])
Hoe doe ik dat?
Performance gericht scripten is tegenwoordig geen onderdeel van de opleiding meer?quote:Op zondag 11 juli 2004 10:51 schreef sylvesterrr het volgende:
[..]
http://nl2.php.net/manual/en/function.preg-replace.php
http://nl2.php.net/manual/en/function.ereg-replace.php
1. Welke opleiding?quote:Op zondag 11 juli 2004 10:51 schreef Roönaän het volgende:
[..]
Performance gericht scripten is tegenwoordig geen onderdeel van de opleiding meer?
1. Zelfstudie. Tegenwoordig wil men niet meer goed scripten, alleen maar werkend.quote:Op zondag 11 juli 2004 10:54 schreef sylvesterrr het volgende:
[..]
1. Welke opleiding?
2. Eerlijk gezegd vind ik jouw methode niet om aan te zien.
ff kijken of ik het begrijp...quote:Op zondag 11 juli 2004 10:51 schreef Roönaän het volgende:
[..]
$str = substr($str, 0, $van).$replace.substr($str, $tot);
quote:Op zondag 11 juli 2004 10:58 schreef Swetsenegger het volgende:
[..]
ff kijken of ik het begrijp...
ik heb....
$quote_invoer=$row['invoer'];
Maar daar kan dus al een [.quote]blabla[./quote] in staan.
Ik wil dus quotes in quotes vermijden, net als hier op fok.
Dus het wordt dan
$quote_invoer=substr($quote_invoer,0,[.quote]).$weetnietwathiermoet($quote_invoer,[./quote]);
quote:Op zondag 11 juli 2004 10:57 schreef Roönaän het volgende:
[..]
1. Zelfstudie. Tegenwoordig wil men niet meer goed scripten, alleen maar werkend.
Weegt dat op tegen de onduidelijkheid van 2x strpos + die regel?quote:2. Want? 2x strpos + die regel is gewoon sneller dan het opstarten van je regexp engine.
Eén woord: documenterenquote:Daarnaast levert het regexpen vaak een onduidelijkheid in je code op als je het later wilt teruglezen.
Als je lang genoeg met regexps bezig bent, kun je je regexp best makkelijk herkennen.quote:Je kan in één oogopslag zien wat er gebeurt bij de substr.$t.substr methode, wat je bij het regexpen altijd een moment nadenken kost
Met alle respect hoor, maar is dat niet de schuld van de scripter zelf?quote:en een secure check of je misschien niet vergeten bent een \ een quote of een ^ bent vergeten te lezen waardoor de betekenis 100% anders is dan je eerst had gedacht.
Even ontleden, want gewoon copy paste is niet voldoende....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);
jou oplossing ziet er simpeler uit. Alleen weet ik dus niet wat er tussen de [.quote] en [./quote] staat...quote:Op zondag 11 juli 2004 11:22 schreef sylvesterrr het volgende:
-laat maar-
StrPos is de php versie van de java methode string.indexOf. De eerste param, is de haystack, de tweede de needle. De derde ($quote_start) geeft aan vanaf welke index er gezocht mag worden.quote:Op zondag 11 juli 2004 11:19 schreef Swetsenegger het volgende:
[..]
Even ontleden, want gewoon copy paste is niet voldoende....
Ok,
variabele quote_start wordt dan [.quote]
quote_einde wordt.... [./quote]... maar wat doet die $quote_start daar
Jups. StrPos geeft false terug als een substring niet gevonden wordt. Als je dit niet eerst test, gebeuren er mogelijk rare dingen (omdat false bij casting naar een int gelijk wordt gezet aan 0 geloof ik)quote:[./quote] zou staan, dan zou je zonder die derde param de eerste [./quote] krijgen waardoor later je replace gedeelte krom loopt (je eindindex is lager dan je beginindex). Als je die derde param toevoegt kijkt die alleen naar het stuk na [.quote] en vind die dus de goede, tweede, [./quote]
[quote]
als quote_start niet gelijk is aan 'false EN "e_einde niet gelijk is aan 'false'... dan wordt
quote_invoer gelijk aan quote_invoer vanaf positie 0 t/m positie quote_start + [..] + quote_invoer vanaf quote _einde...
aha, okquote:Op zondag 11 juli 2004 11:25 schreef Roönaän het volgende:
[..]
StrPos is de php versie van de java methode string.indexOf. De eerste param, is de haystack, de tweede de needle. De derde ($quote_start) geeft aan vanaf welke index er gezocht mag worden.
Hmz, niet helemaal:quote:Op zondag 11 juli 2004 11:47 schreef Swetsenegger het volgende:
Maar volgens mij levert dit:
[.quote]Op 11-07 zei Swets bladiebla[.quote][..][./quote][./quote]
en niet
[.quote]Op 11-07 zei Swets bladiebla[..][./quote]
Maar hoe zit dat dan als je een tekst hebt met [.quote] en dan nog een keer [.quote], dan gevolgd door een [./quote] en om alles af te sluiten weer een [./quote]? En om het leuker te maken kun je ook nog meerdere quotes neerzetten natuurlijk.quote:Op zondag 11 juli 2004 11:25 schreef Roönaän het volgende:
Als er bijvoorbeeld [./quote]
[./quote] zou staan, dan zou je zonder die derde param de eerste [./quote] krijgen waardoor later je replace gedeelte krom loopt (je eindindex is lager dan je beginindex). Als je die derde param toevoegt kijkt die alleen naar het stuk na [.quote] en vind die dus de goede, tweede, [./quote]
0 == "" == false, da's allemaal waar. Maar 0 === "" is false. En 0 === false en "" === false ook.quote:Jups. StrPos geeft false terug als een substring niet gevonden wordt. Als je dit niet eerst test, gebeuren er mogelijk rare dingen (omdat false bij casting naar een int gelijk wordt gezet aan 0 geloof ik)
Mjah, in principe voorkom ik nu dat er nooit meer dan 2 keer een [.quote] en [./quote] in de tabel komt te staan.quote:Op zondag 11 juli 2004 12:03 schreef Light het volgende:
[..]
Maar hoe zit dat dan als je een tekst hebt met [.quote] en dan nog een keer [.quote], dan gevolgd door een [./quote] en om alles af te sluiten weer een [./quote]? En om het leuker te maken kun je ook nog meerdere quotes neerzetten natuurlijk.
[..]
0 == "" == false, da's allemaal waar. Maar 0 === "" is false. En 0 === false en "" === false ook.
Tja, je weet natuurlijk nooit wat mensen invoerenquote:Op zondag 11 juli 2004 12:07 schreef Swetsenegger het volgende:
[..]
Mjah, in principe voorkom ik nu dat er nooit meer dan 2 keer een [.quote] en [./quote] in de tabel komt te staan.
Als mensen handmatig TTC (das mijn variant van UBB codes) gaan toevoegen, gaat het uieraard mis.
Wanneer iemand gewoon 'quote' klikt en zijn aanvulling erbij zet niet.
$quote_invoer = substr($quote_invoer, 0, $quote_start).'[..]'.substr($quote_invoer, $quote_einde+8); Dan begin je niet meer op de plek van die [./quote] met je tweede substring, maar 8 plaatsen verder. Dan zou je precies die [./quote] gehad moete hebben.quote:Behalve dan dat ik met roonaans code een [./quote] extra overhou....
OE, die is mooier dan mijn verzonnen oplossing:quote:Op zondag 11 juli 2004 12:14 schreef Light het volgende:
[..]
Tja, je weet natuurlijk nooit wat mensen invoeren
[..]
$quote_invoer = substr($quote_invoer, 0, $quote_start).'[..]'.substr($quote_invoer, $quote_einde+8); Dan begin je niet meer op de plek van die [./quote] met je tweede substring, maar 8 plaatsen verder. Dan zou je precies die [./quote] gehad moete hebben.
strpos geeft de positie van het begin van die string.quote:Op zondag 11 juli 2004 12:20 schreef Swetsenegger het volgende:
Alleen begrijp ik niet dat quote_start WEL goed gaat (en niet tot en met [.quote]) en quote_einde niet
ja, maar in geval van quote_start toch ook tot en met [.quote]?quote:Op zondag 11 juli 2004 12:24 schreef sylvesterrr het volgende:
[..]
strpos geeft de positie van het begin van die string.
quote_start geeft aan waar de [.quote] begint. Maar quote_start wordt als lengte gebruikt in substr. En omdat we altijd bij nul beginnen te tellen klopt het weer precies. Quote_start geeft dus niet alleen aan waar [.quote] begint maar ook hoeveel tekens er voor [.quote] staan, en dat gebruik jequote:Op zondag 11 juli 2004 12:34 schreef Swetsenegger het volgende:
[..]
ja, maar in geval van quote_start toch ook tot en met [.quote]?
Dat begrijp ik tenminste uit de beschrijving op php.net
Yep, ik zie het nu.quote:Op zondag 11 juli 2004 13:00 schreef Light het volgende:
[..]
quote_start geeft aan waar de [.quote] begint. Maar quote_start wordt als lengte gebruikt in substr. En omdat we altijd bij nul beginnen te tellen klopt het weer precies. Quote_start geeft dus niet alleen aan waar [.quote] begint maar ook hoeveel tekens er voor [.quote] staan, en dat gebruik je
eh... snap ik niet.quote:Op maandag 12 juli 2004 13:44 schreef Roönaän het volgende:
Na het verzenden gewoon meteen redirecten.
header('Location: index.php');
Ah okee.quote:Op maandag 12 juli 2004 13:45 schreef Swetsenegger het volgende:
[..]
eh... snap ik niet.
Wat redirect ik? Ik wil die mensen wel op die pagina houden
Ik snappum wel... ff testen, want dit zou precies zijn wat ik nodig hebquote:Op maandag 12 juli 2004 13:49 schreef Roönaän het volgende:
[..]
Ah okee.
Het idee is dat je via die header() functie tegen de browser zegt dat die naar een andere locatie gaat.
Evn denken. Jij wil dat die op dezelfde pagina blijft (response.php) maar dat hij als het waren het POST gebeuren vergeet.
Als je dan header('Location: response.php') doet, dan ontvangt de browser dit, die vervolgens response.php opnieuw van de server inleest als GET request:
Browser -> Server: POST response.php?bericht=....enz
Server->Browser: Header:Location: response.php
Browser -> Server GET response.php
Als iemand dan F5 doet is de laatst geladen pagina die GET response.php en ben je dus van het POST verhaal af.
/brakke uitleg.
Forum Opties | |
---|---|
Forumhop: | |
Hop naar: |