Als ik onderstaande code lees dan ga ik er een beetje vanuit dat $this->db->LoadElement iets uit een database laadt en wellicht FindPossibleChildClasses ook nog database interactie bevat. Daarmee leek je dan je inheritance tree ook in je database te hebben staan.quote:Op zondag 24 augustus 2014 19:12 schreef Igen het volgende:
[..]
Database? Alles wat ik hier heb gepost heeft niks met databases te maken. Ik ga toch zeker niet met een database verbinding maken om te kijken welke classes mijn broncode kent.
1 2 3 4 5 | <?php $mod_parent = $this->db->LoadElement($parent_id); $childclasses = $mod_parent->FindPossibleChildClasses($this->options); ?> |
Er is an sich helemaal niets mis met inheritance. Echter lijken veel mensen het onderscheid tussen 'IS-A' and 'HAS-A' relaties niet zo goed te snappen en dat is toch wel een basisconceptje in OOP. Ik kreeg een beetje de indruk dat je in je code b.v. titels of plaatjes b.v. subclasses van pagina's waren.quote:[..]
Is er iets mis met inheritance?
Op zich is het niet vreemd om interfaces (of abstract class, maar die beperk je het liefst tot een minimum m.i.) te hebben.quote:Het hele basisidee van mijn programma is, dat de programmakern alleen maar een abstracte boom van elementen (als interface / abstracte klasse) kent en dat die elementen zelf weten hoe ze zichzelf moeten weergeven. En dat je voor een nieuw soort pagina-inhoud dus alleen een nieuwe interface-implementatie / afgeleide klasse hoeft te maken.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 | <?php interface myInterface { public static String getName(); } Class A implements myInterface { public static function getName() { echo "A"; } } Class B implements myInterface { public static function getName() { echo "B"; } } function test(myInterface $param) { $param::getName(); } ?> |
1 2 3 4 5 | <?php $classname = 'tpl_' . $classbase; $instance = new $classname; $name = call_user_func(array($instance, 'GetName')); ?> |
Op zich is dat niet verkeerd. Het is wel gebruikelijk om met name in de wat formelere OO talen b.v. interfaces als 'Element' te hebben met een Render() methode die moet worden geïmplementeerd in classes die een dergelijk interface implementeren. Een andere optie is bijvoorbeeld gebruik maken van decorator patterns.quote:Is dat verkeerd of ouderwets?
Mag ik vragen wat het doel is? Want het klinkt alsof je een soort primitieve mailserver wilt implementeren in PHP.quote:Op dinsdag 26 augustus 2014 13:52 schreef webbyplus het volgende:
Hallo,
Ik wil graag een online repository maken voor al mijn ontvangen outlook-mailtjes.
De bedoeling is dat ik mailtjes upload en dat ik een PHP-script heb dat de eigenschappen van de messages uitleest(zoals body, titel, afzender, etc) en in een mysql database zet.
Het upload/mysql stuk gaat me lukken. Ik vraag me alleen af of het mogelijk is om van een .msg file de eigenschappen uit te lezen?
Iemand ervaring mee?
Thx,
Webster
Die Outlook files zijn binary. Zie b.v. hier voor de specs. Afgezien van een volstrekt eigen implementatie, kun je ook gebruik maken van COM.quote:Op dinsdag 26 augustus 2014 13:52 schreef webbyplus het volgende:
Hallo,
Ik wil graag een online repository maken voor al mijn ontvangen outlook-mailtjes.
De bedoeling is dat ik mailtjes upload en dat ik een PHP-script heb dat de eigenschappen van de messages uitleest(zoals body, titel, afzender, etc) en in een mysql database zet.
Het upload/mysql stuk gaat me lukken. Ik vraag me alleen af of het mogelijk is om van een .msg file de eigenschappen uit te lezen?
Iemand ervaring mee?
Thx,
Webster
Foreach en dan bij elke case de waardes uitecho'enquote:Op woensdag 27 augustus 2014 17:42 schreef Adames het volgende:
Even een basisvraag, hopelijk kunnen jullie me helpen. Het hoeft voor mij niet uigeschreven te worden, maar ik kom niet op de juiste zoektermen voor mijn probleem:
Ik wil een pagina/script maken waarmee ik gemakkelijk een database/tabel kan bewerken. Mijn tabel heeft 4 velden, een nummer als PK, een voornaam, achternaam en beschrijving. Wat mij het makkelijkst lijkt als gebruiker is om een dropdown menu te krijgen waarin ik mijn juiste voornaam + achternaam kan selecteren, waarna ik op een knop 'ophalen' klik om zodoende de 3 velden eronder te vullen met de huidige data. Deze velden kan ik dan wijzigen waarna ik op een tweede knop 'wijzigen' klik.
Een tabel leegtrekken in een array lukt nog wel, waarna je ze rij voor rij kan uitlezen. Alleen snap ik niet hoe ik deze informatie in eerste instantie in een case optie in een formulier krijg.
Tis in perl maar je kan er mogelijk inspiratie uithalen.quote:Op dinsdag 26 augustus 2014 13:52 schreef webbyplus het volgende:
Hallo,
Ik wil graag een online repository maken voor al mijn ontvangen outlook-mailtjes.
De bedoeling is dat ik mailtjes upload en dat ik een PHP-script heb dat de eigenschappen van de messages uitleest(zoals body, titel, afzender, etc) en in een mysql database zet.
Het upload/mysql stuk gaat me lukken. Ik vraag me alleen af of het mogelijk is om van een .msg file de eigenschappen uit te lezen?
Iemand ervaring mee?
Thx,
Webster
Mantis?quote:Op zondag 31 augustus 2014 22:28 schreef Robuustheid het volgende:
Is dat voor Laravel?
Ik ben trouwens al tijdje op zoek naar PHP code, voor een stukje applicatie op intranet.
Bij dat applicatie kunnen eindgebruikers hun vragen en opmerkingen posten, waarna hun issues verschijnen op een beheerderslijst, waarna de beheerders erop kunnen reageren, en de issue vervolgens 'sluiten'.
Wat jij beschrijft is toch gewoon precies een bugtracker? Het lijkt me dat er genoeg kant en klare bugtrackers te vinden zijn, eventueel als bundle voor je framework.quote:Op dinsdag 2 september 2014 13:25 schreef Robuustheid het volgende:
[..]
Als dat bij m'n omschrijving aansluit?
gewoon iets simpels als Bugzilla dan?quote:Op dinsdag 2 september 2014 13:25 schreef Robuustheid het volgende:
[..]
Als dat bij m'n omschrijving aansluit?
[..]
Dat is wel te uitgebreid, zie ik.
Volgens mij bedoeld ie een feedback popup, en dat dan inderdaad linken aan je issue tracker naar keuze. Volgens mij een beetje ala https://wordpress.org/plugins/contact-popup/quote:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | <?php /** * Catch method call for default endpoints and perform api call if endpoint is set. * * @param $method * @param $parameters * @return mixed */ public function __call($method, $parameters) { if ( ! isset($this->config['endPoints'][$method]) ) { throw new BadFunctionCallException("The method [$method] is not a valid endpoint."); } return $this->bolRequest->makeRequestTo($this->config['endPoints'][$method], $parameters); } ?> |
Het lijkt vrij omslachtig in ieder geval.quote:Op dinsdag 2 september 2014 22:23 schreef TwenteFC het volgende:
Is dit heel smerig om te doen?
[ code verwijderd ]
Hoe bedoel je dit precies?quote:Op woensdag 3 september 2014 08:55 schreef Monolith het volgende:
[..]
Het lijkt vrij omslachtig in ieder geval.
1 2 3 4 | Select title, img_url, deeplink1, displayprice, productcategoryname, `Description_Short` FROM products WHERE `ProductCategoryName` like '%socks%' AND title LIKE '%woman%' |
Het lijkt op een workaround, dus de vraag is wat je er precies mee wilt bereiken.quote:
Een wrapper maken om de api van bol.comquote:Op woensdag 3 september 2014 19:20 schreef Monolith het volgende:
[..]
Het lijkt op een workaround, dus de vraag is wat je er precies mee wilt bereiken.
1 2 3 4 | <?php $bolRequest = new Bol; $phpProducten = $bolRequest->search(['q' => 'PHP']); ?> |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | <?php 'endPoints' => [ 'lists' => 'catalog/v4/lists/', 'search' => 'catalog/v4/search', 'products' => 'catalog/v4/products/', 'offers' => 'catalog/v4/offers/', 'recommendations' => 'catalog/v4/recommendations/', 'relatedproducts' => 'catalog/v4/relatedproducts/', 'sellerlist' => 'catalog/v4/sellerlists/', 'ping' => 'utils/v4/ping/', 'sessions' => 'accounts/v4/sessions/', 'wishlist' => 'accounts/v4/wishlists/', 'basket' => 'checkout/v4/baskets/' ] ?> |
Dat kan wel hoor. Waarschijnlijk geeft een van de twee like condities geen resultaten (b.v. omdat in je DB 'women' ipv 'woman' staat ofzo). Probeer even beide termen los en kijk op welke van de twee je geen resultaten krijgt.quote:Op woensdag 3 september 2014 18:37 schreef devlieger het volgende:
HOI!
Ik ben niet zo goed in queries maar probeer het volgende te doen:
[ code verwijderd ]
Dit geeft geen resultaat weer, terwijl ik zou verwachten dat ik hiermee alle vrouwen sokken te zien zou krijgen. Als ik een OR zet ipv de laatste AND dan krijg ik wel resultaat maar dan krijg ik teveel te zien.
Kun je geen twee keer Like gebruiken? FYI: in de title col staat dus of het een vrouwen of mannen product is
pleh, thnx!
1 2 3 | Select title, img_url, deeplink1, displayprice, productcategoryname, `Description_Short` FROM products WHERE `ProductCategoryName` like '%socks%' |
1 2 3 | Select title, img_url, deeplink1, displayprice, productcategoryname, `Description_Short` FROM products WHERE title LIKE '%woman%' |
Forum Opties | |
---|---|
Forumhop: | |
Hop naar: |