Dan errors welke komen van bezoekers zonder referrer niet mailen?quote:Op zondag 25 november 2007 15:37 schreef Xcalibur het volgende:
nou, tot nu toe zijn het steeds verschillende pagina's geweest, dus dat is net zo hopeloos waarschijnlijk
Tegen die hack probes doe je totaal niks, onbegonnen werk en zonde van je tijd want last heb je er toch niet van, tenzij je elke keer een mailtje laat sturenquote:Op zondag 25 november 2007 15:37 schreef Xcalibur het volgende:
nou, tot nu toe zijn het steeds verschillende pagina's geweest, dus dat is net zo hopeloos waarschijnlijk
Probleem is dat downloaden ook bekijken isquote:Op zondag 25 november 2007 13:09 schreef JortK het volgende:
[..]
Ik zou het sowieso niet mogelijk maken om meerdere bestanden tegelijkertijd te downloaden
Verder zou ik kijken naar het aantal downloads van een bestand per ID per een x tijd
Dan moet je de combinatie maken denk ikquote:Op zondag 25 november 2007 16:48 schreef Chandler het volgende:
[..]
Probleem is dat downloaden ook bekijken is
En je je moet wel meerdere afbeeldingen kunnen bekijken/ophalen toch?
1 2 3 | preg_match('/^(.*?)\,[ ](the|a|de|dr\.|dj\.)$/', $Name, $Match); ?> |
De *? staat voor ungreedy (of reluctant). De quantifier gevolgd door een vraagteken geeft dan aan dat die een geldige pattern moet vinden, maar het liefst een zo kort mogelijke. Om het even aan de hand van een voorbeeld te illustreren :quote:Op zondag 25 november 2007 20:30 schreef SuperRembo het volgende:
Ik denk dat de combinatie "*?" niet mag. * betekent 0 of meerdere keren, ? betekent 0 of 1 keer. Het vraagteken is dus overbodig.
1 2 3 4 5 6 | preg_match('#a(b|a)*a#', 'ababba'); // Matcht 'ababba' // Reluctant preg_match('#(a(b|a)*?a#', 'ababba'); // Matcht 'aba' preg_match('#(a(b|a)*?a#', 'abbbabba'); // Matcht 'abbba' |
Je kunt een pattern ook ungreedy maken met de modifier U:quote:Op zondag 25 november 2007 23:12 schreef autocue het volgende:
[..]
De *? staat voor ungreedy (of reluctant). De quantifier gevolgd door een vraagteken geeft dan aan dat die een geldige pattern moet vinden, maar het liefst een zo kort mogelijke. Om het even aan de hand van een voorbeeld te illustreren :
1 |
Ja, natuurlijk. Was ik ff vergeten. Hij is bij deze regexp wel overbodig, want er staat niets in wat een verschil tussen greedy/ungreedy zou maken.quote:Op zondag 25 november 2007 23:12 schreef autocue het volgende:
De *? staat voor ungreedy (of reluctant).
Ik vroem me ook al af of er niet ergens een \ zou zijn weggevallen.quote:Is het misschien Replique die dingen raar escapet?
Zoals ik al noemde in mijn verhaal of in mijn vorige topic is dit wel mogelijk, alleen er komt een bepaalde encoding overheen die ervoor zorgt dat je meer problemen krijgt dan alleen maar andere line-breaks.quote:Op woensdag 21 november 2007 19:04 schreef Xcalibur het volgende:
[..]
Waarom kan je vanuit Word niet gewoon als .txt opslaan?
Het enige wat ik me kan voorstellen is dat je een probleem met de regeleinden hebt, maar dat lijkt me wel op te lossen
Je kunt de boel toch gewoon in gescheiden kollomen gooien in je tabelquote:Op dinsdag 27 november 2007 14:22 schreef Chandler het volgende:
Vraagje;
Ik wil bestellingen van een bepaalde website opslaan op een nieuwe methode.
Nu kwak ik de gehele bestelling in tekst (zoals deze per email verzonden wordt) in een database, maar nu wil ik bepaalde waarden anders gaan opslaan. En ik vroeg mij het volgende af.
Kan ik een tabel zowel gebruiken voor nummerieke als tekstuele gegevens of is het handiger om deze tabellen te splitsen (nummeriek en teksten (text) in een appart tabel)
Of zou ik dit tabel voor beide waarden kunnen gebruiken? (met 2 mogelijk te vullen velden 1 nummeriek, 1 tekst plus een veld om aan te geven welk veld gevuld is)
Waarom zou je dat willen splitsen? Zet het lekker in 1 tabel, zorg er alleen voor dat je database genormaliseerd is.quote:Op dinsdag 27 november 2007 14:22 schreef Chandler het volgende:
Vraagje;
Ik wil bestellingen van een bepaalde website opslaan op een nieuwe methode.
Nu kwak ik de gehele bestelling in tekst (zoals deze per email verzonden wordt) in een database, maar nu wil ik bepaalde waarden anders gaan opslaan. En ik vroeg mij het volgende af.
Kan ik een tabel zowel gebruiken voor nummerieke als tekstuele gegevens of is het handiger om deze tabellen te splitsen (nummeriek en teksten (text) in een appart tabel)
Of zou ik dit tabel voor beide waarden kunnen gebruiken? (met 2 mogelijk te vullen velden 1 nummeriek, 1 tekst plus een veld om aan te geven welk veld gevuld is)
Ik snap niet wat je nu helemaal bedoeldquote:Op dinsdag 27 november 2007 14:49 schreef Chandler het volgende:
Klopt jullie hebben gelijk, maar deze bestelling is bestelling anders, daar kan ik natuurlijk moeilijk de database op aanpassen! (per type bestelling) en daarom leek het mij handiger om bepaalde gegevens anders te verwerken!
Ik heb het opgelost.quote:Op zondag 25 november 2007 23:12 schreef autocue het volgende:
[..]
De *? staat voor ungreedy (of reluctant). De quantifier gevolgd door een vraagteken geeft dan aan dat die een geldige pattern moet vinden, maar het liefst een zo kort mogelijke. Om het even aan de hand van een voorbeeld te illustreren :
[ code verwijderd ]
Met betrekking tot de vraag, de pattern is volgens mij gewoon geldig. Is het misschien Replique die dingen raar escapet?
1 2 3 | preg_match('/^(.*?)\, [ ](the|a|de|dr\.|dj\.)$/i', $Name, $Match) ?> |
1 2 3 4 | if (isset($_GET['i'])) {$item = $_GET['i'];} if (isset($_GET['zoek'])) {$zoek = $_GET['zoek'];} ?> |
$_GET[$i]quote:Op woensdag 28 november 2007 15:39 schreef LeeHarveyOswald het volgende:
Werkt toch niet helemaal. Ik heb nu onderstaand, maar hij vindt ze altijd leeg, ook al staat er wat in![]()
[ code verwijderd ]
1 2 3 | $item = (isSet($_GET['i']) ? $_GET['i'] : ""); ?> |
Je hoeft toch alleen de key aan die functie door te geven? $_POST is super-global, dus die heb je ook tot je beschikking binnen de functie.quote:Op donderdag 29 november 2007 10:13 schreef Xcalibur het volgende:
Ik heb een beetje een kip-ei probleem met het checken van een variabele...
Ik controleer alle input met een set functies, die bepalen of een veld leeg mag zijn, alleen numeriek, etc. Ik gooi dus een $_POST variabele in die functie. Als deze variabele niet bestaat krijg ik dus een notice, maar ik check pas OF hij bestaat IN de functie....
Nou kan ik wel een isset om de functie aanroep heenzetten, maar dat vind ik niet mooi
Kan ik dit oplossen?
over de 50 if: Dat kun je makkelijk met een switchquote:Op donderdag 29 november 2007 18:50 schreef DaFrenk het volgende:
Stel dat ik in de database een veld "media type" heb waarin zo'n 50 unieke types staan (zoals CD, LP enz.). Nu wil ik wanneer ik die types ga weergeven op de site i.p.v. tekst een afbeelding neerzetten. Dus als het type CD is dan moet hij /images/cd.gif weergeven. Hoe kan ik dit op een nette en efficiënte manier oplossen? 50 if-statements lijkt me een beetje onhandig.
Zelf zat ik te denken aan een array met alle types en de bijbehorende afbeeldingen. Maar hoe maak ik zoiets aan en hoe haal ik dat er weer uit?Hij moet dus die array doorzoeken naar het media-type en vervolgens de afbeelding die erbij hoort terug geven zodat ik die kan echo'en.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | switch($typ) { case 'lp' : $img = 'lp.gif'; break; case 'cd' : $img = 'cd.gif'; break; default : $img = 'default.gif'; break; } $imgurl = 'path/to/images/'.$img; ?> |
Waarom die tweede s met een hoofdletter? Overigens vind ik het wel een beetje raar dat die functie geen is_set heet. Aangezien een hoop functies wel met is_ beginnen, zoals is_numeric, is_null enzovoorts.quote:Op woensdag 28 november 2007 18:35 schreef Chandler het volgende:
Je kunt nog beter dit doen; dan is de variabel zo ie zo gebruikt.
[ code verwijderd ]
uit het hoofd hé
quote:Op donderdag 29 november 2007 19:25 schreef super-muffin het volgende:
[..]
over de 50 if: Dat kun je makkelijk met een switch
[ code verwijderd ]
En het doorzoeken van een array is niet zo heel moeilijk.Als je de key weet is het een kwestie van $array['key'];
1 2 3 4 5 6 7 8 9 10 11 12 | $arr = array("cd" => "cd.gif", "lp" => "lp.gif", etcetcetc); if (in_array("cd", $arr)) { $img = $arr["cd"]; } else { $img = "standaard.jpg"; } ?> |
of een extra kolom maken in je database met daarin "type.gif" en die ook gewoon in je loop gooienquote:Op donderdag 29 november 2007 19:38 schreef Chandler het volgende:
[..]
Je kunt beter een array aanmaken met bv het volgende
[ code verwijderd ]
dit is maar een opzetje, maar scheelt heel veel IF's
quote:Op donderdag 29 november 2007 19:38 schreef Chandler het volgende:
[..]
Je kunt beter een array aanmaken met bv het volgende
[ code verwijderd ]
dit is maar een opzetje, maar scheelt heel veel IF's
De array met de mapping van type naar plaatje kan je in een config bestandje zetten. Dan kan je de mapping wijzigen zonder echt in de code te knoeien.quote:
Om hem dynamisch te maken moet ik dan zoiets doen?quote:Op donderdag 29 november 2007 19:38 schreef Chandler het volgende:
[..]
:N
Je kunt beter een array aanmaken met bv het volgende
[ code verwijderd ]
dit is maar een opzetje, maar scheelt heel veel IF's
1 2 3 4 5 6 7 8 9 10 11 12 | $arr = array("cd" => "cd.gif", "lp" => "lp.gif", etcetcetc); if (in_array($row['MEDIA'] , $arr)) { $img = $arr[$row['MEDIA']]; } else { $img = "standaard.jpg"; } ?> |
1 2 3 | $img = ( file_exists( $row['media'].'.gif' ) ? $row['media'] : 'default' ) . '.gif'; ?> |
Interessante oplossing! Inderdaad doodsimpel! Even kijken of dat compatible is met alle media types die ik heb.quote:Op donderdag 29 november 2007 22:34 schreef ralfie het volgende:
[ code verwijderd ]
Zoooo, hoef je alleen maar de plaatjes te uploaden van de media die je wil en klaar is DaFrenk. Niks geen gezeik met arrays, en simpel dingen toevoegen of verwijderen. Wel iets trager als je dit honderden keren gaat doen op elke pagina, maar het is wel lekker simpel. En daar hou ik van
tevens tvp
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | kees - maand - 2 kees - dag - 3 kees - stad - groningen kees - land - NL erik - jaar - 1988 erik - maand - 3 erik - dag - 12 erik - stad - Amsterdam erik - land - NL mark - jaar - 1977 mark - maand - 12 mark - dag - 22 mark - stad - Antwerpen mark - land - BE |
1 2 3 4 5 | FROM database LEFT JOIN database d ON d.naam = database.naam WHERE d.property = 'land' AND d.value = 'NL' AND database.property = 'stad' GROUP BY database.value |
1 2 3 4 | FROM database db1, database db2 WHERE db1.naam = 'land' AND db2.naam = 'stad' AND db1.titel = db2.titel AND db1.naam = 'NL' GROUP BY database.value |
1 2 3 4 5 | FROM db1 LEFT JOIN db1 D on D.naam = db1.naam WHERE D.property = 'land' AND D.value = 'nl' AND db1.property = 'woonplaats' GROUP by db1.value |
1 2 3 4 5 6 7 8 | FROM gegevens WHERE naam = 'stad' AND titel IN ( SELECT DISTINCT(titel) FROM gegevens WHERE naam = 'land' AND gegeven = 'NL' ) |
Je moet geen left join hebben maar je moet dezelfde tabel twee keer aan elkaar joinen en in de WHERE zeggen dat je van de ene alleen het land wil zien, en van de anders alleen de stadquote:Op vrijdag 30 november 2007 11:33 schreef Chandler het volgende:
Jort, dat werkte niet.
Ik heb net weer een LEFT JOIN geprobeerd maar kwam weer heel wat buitenlandse woonplaatsen tegen
[ code verwijderd ]
Ik kan helaas geen select in een query gebruiken *(geen query in queries)*quote:
Dat heb ik dus geprobeerd, maar het stomme is dat ik dan nog buitenlandse plaatsen krijgquote:Op vrijdag 30 november 2007 11:39 schreef JortK het volgende:
Je moet geen left join hebben maar je moet dezelfde tabel twee keer aan elkaar joinen en in de WHERE zeggen dat je van de ene alleen het land wil zien, en van de anders alleen de stad
Forum Opties | |
---|---|
Forumhop: | |
Hop naar: |