quote:MySQL 5.7 Labs — Inserting, Updating, and Deleting Records via HTTP
In the MySQL Labs version of MySQL version 5.7, there is a new HTTP plugin. The HTTP plugin documentation from the labs site provides this information (from MySQL Labs):
The HTTP Plugin for MySQL adds HTTP(S) interfaces to MySQL. Clients can use the HTTP respectively HTTPS (SSL) protocol to query data stored in MySQL. The query language is SQL but other, simpler interfaces exist. All data is serialized as JSON. This version of MySQL Server HTTP Plugin is a Labs release, which means it’s at an early development stage. It contains several known bugs and limitation, and is meant primarily to give you a rough idea how this plugin will look some day. Likewise, the user API is anything but finalized. Be aware it will change in many respects.
[...]
1 2 3 4 5 6 | <?php function showRandom() { $query = "SELECT `category`, `idHash`, `title`, `urlTitle`, `imgName`, `views`, `active` FROM `entries` ORDER BY RAND() LIMIT 1"; $row = mysql_fetch_object($query); } ?> |
1 2 3 | <?php echo showRandom->$row->title; ?> |
1 2 3 4 5 6 7 | <?php function showRandom() { // hier code om een random $row uit de database te halen met de benodigde velden return $row; } ?> |
1 2 3 | <?php echo showRandom()['title']; ?> |
1 2 3 4 | <?php $randomRow = showRandom(); echo $randomRow['title']; ?> |
Mijn dank is groot, straks even proberen. Heb hier PHP 5.3.29, vrij oud volgens mij.quote:Op zondag 10 mei 2015 00:13 schreef Tijn het volgende:
[ code verwijderd ]
In recente versies van PHP:
[ code verwijderd ]
In oudere versies van PHP:
[ code verwijderd ]
Ik heb het nu zo en lijkt te werken:quote:Op zondag 10 mei 2015 00:13 schreef Tijn het volgende:
[ code verwijderd ]
In recente versies van PHP:
[ code verwijderd ]
In oudere versies van PHP:
[ code verwijderd ]
1 2 3 4 5 6 7 8 9 10 11 | <?php function showRandom() { global $mysqli; $query = "SELECT `category`, `idHash`, `title`, `urlTitle`, `imgName`, `views`, `active` FROM `entries` ORDER BY RAND() LIMIT 1"; if ($result = $mysqli->query($query)) { while ($row = $result->fetch_object()) { return $row; } } } ?> |
1 2 3 | <?php echo showRandom()->title; ?> |
Resultaat van showRandom() bewaren:quote:Op zondag 10 mei 2015 00:46 schreef xaban06 het volgende:
[..]
Ik heb het nu zo en lijkt te werken:
[ code verwijderd ]
[ code verwijderd ]
Weet alleen niet of dit DE manier is
/edit
Hmm, nu ik er zo over na denk wil ik dit helemaal niet.
Want als ik ergens op de pagina echo showRandom->views; doe, en iets later echo showRandom()->imgName;. Zal de views niet uit hetzelfde result komen als van imgName, omdat iedere ik showRandom(); en nieuwe query wordt gedraaid
1 2 3 | $random = showRandom(); echo $random->views; echo $random->imgName; |
En die functie niet showRandom() noemen. Iets als getRandomEntry() geeft beter aan wat de functie doet.quote:Op zondag 10 mei 2015 02:16 schreef Reemi het volgende:
[..]
Resultaat van showRandom() bewaren:
[ code verwijderd ]
quote:Tweakers: Sql-optimalisatie - Eén grote versus veel kleine queries
In de afgelopen periode hebben we bij Tweakers diverse belangrijke stukken code herschreven. Eerder dit jaar is ons vernieuwde reactiesysteem geïntroduceerd, en in april en mei zijn we bezig geweest om het karmasysteem te herschrijven.
[...]
Wat ons betreft valt de database van Tweakers met 219GB trouwens niet in de orde van grootte om over te stappen op sharding of andere technieken om verscheidene servers tegelijk te gebruiken. Overigens hebben we er wel op diverse manieren voor gezorgd dat de MySQL-database niet voor alle gegevens gebruikt hoeft te worden. We hebben er bijvoorbeeld voor gekozen om bepaalde stukken data in MongoDB op te slaan of in memcached te cachen en veel van de informatie wordt via onze Java-omgeving opgevraagd.
In dit artikel beschrijven we twee toepassingen waarbij de databaseprestaties voor ons belangrijk waren. Daarbij laten we stapsgewijs een aantal optimalisaties zien die signficante verbeteringen in de prestaties gaven. Bedenk wel dat dit artikel niet gaat over het plaatsen van de juiste indices of het optimisaliseren van de instellingen van een database. Dit is een parallelle taak waarbij bekeken wordt of de database wel optimaal ingezet wordt, maar een goed geoptimaliseerde tabelstructuur en database zijn uiteraard ook belangrijk voor goede prestaties.
maak een padamtssshhh prepare statement 😂quote:
Inderdaad op die manier opgelostquote:Op zondag 10 mei 2015 02:16 schreef Reemi het volgende:
[..]
Resultaat van showRandom() bewaren:
[ code verwijderd ]
1 2 3 | <?php global $mysqli; ?> |
1 2 3 | <?php $mysqli = new mysqli("localhost", "xx", "xx", "xx"); ?> |
Al paar keer daarover gaan lezen, maar ik begrijp het maar niet, ik ben blijven haken bij php4quote:Op zondag 10 mei 2015 13:29 schreef Monolith het volgende:
Sowieso kan het geen kwaad om eerst eens de basisconcepten van object georiënteerd programmeren te leren; classes, methodes, fields, scopes, objecten, enzovoort.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 | <?php $URI = $_SERVER['REQUEST_URI']; $urlPart = explode("/", strtolower($URI)); if ($URI == "/") { /* Show frontpage as browser URL is http://www.xx.nl */ $showPage = "frontpage"; } else { /* We need to show another page than the frontpage */ /* Lets see which pages we have */ $safePages = array("xx", "foo", "bar", "contact"); if (in_array($urlPart["1"], $safePages)) { /* The page which needs to be loaded seems to be a valid URL */ /* Lets see now which page we have to load */ if ($urlPart["1"] == "xx") { /* We have to load the xx page */ /* But first we have to check if we have to load the general xx page or we have to show a single xx entry */ if (empty($urlPart["2"])) { /* Ok, we have to load the xx general page */ $showPage = "xx"; } else { /* It seems there is more in the URL, so we have to load a xx entry */ /* But first, lets check if the entry does exists */ $resultCheck = checkEntry($urlPart["1"], $urlPart["2"]); if ($resultCheck) { /* Result is found. We can safely load a xx entry */ $showPage = "xxEntry"; } else { /* Result not found, probably incorrect hash or someone is hacking the website */ /* Show Error 404 - entry not found */ $showPage = "404"; } } } /* repeat the if for other pages */ /* STILL TO DO */ } else { /* Page not found in safe pages */ /* Show Error 404 - page not found */ $showPage = "404"; } } ?> |
Mja, ik zou het toch blijven proberen. Wat jij hierboven schetst kun je bijvoorbeeld prima regelen met een singleton.quote:Op dinsdag 12 mei 2015 18:58 schreef xaban06 het volgende:
[..]
Al paar keer daarover gaan lezen, maar ik begrijp het maar niet, ik ben blijven haken bij php4
Of dependency injection jo! Het 'Services principe' lijkt steeds meer gebruikt te worden.quote:Op dinsdag 12 mei 2015 19:27 schreef Monolith het volgende:
[..]
Mja, ik zou het toch blijven proberen. Wat jij hierboven schetst kun je bijvoorbeeld prima regelen met een singleton.
En wat als je site in een ander pad geinstalleerd wordt dan onder de www-root?quote:Op dinsdag 12 mei 2015 19:24 schreef xaban06 het volgende:
Nu ik toch bezig ben. Ik wil 'clean URLs'. Dat moet ik met PHP zien af te vangen en de correcte pagina te laden.
Heb daarvoor dit geschreven, is dit een beetje de manier hoe het moet of kan het VEEL simpeler en beter?
[ code verwijderd ]
Bovenstaande script include ik in mijn index. In de index kijk ik naar de waarde van $showPage en afhankelijk daarvan include ik de benodigde pagina's.
Hoe bedoel je? Is mijn script daar afhankelijk van dan?quote:Op dinsdag 12 mei 2015 20:57 schreef zoem het volgende:
[..]
En wat als je site in een ander pad geinstalleerd wordt dan onder de www-root?
quote:Op dinsdag 12 mei 2015 21:10 schreef xaban06 het volgende:
[..]
Hoe bedoel je? Is mijn script daar afhankelijk van dan?
1 2 3 | <?php $URI = $_SERVER['REQUEST_URI']; ?> |
Als je http://example.com/site/index.php aanroept zul je 'site' eruit moeten knippen. Anders zullen de array indices van $urlPart niet meer kloppen.quote:Op dinsdag 12 mei 2015 21:10 schreef xaban06 het volgende:
[..]
Hoe bedoel je? Is mijn script daar afhankelijk van dan?
Ah op die manierquote:Op dinsdag 12 mei 2015 21:18 schreef zoem het volgende:
[..]
Als je http://example.com/site/index.php aanroept zul je 'site' eruit moeten knippen. Anders zullen de array indices van $urlPart niet meer kloppen.
Functie voor schrijven die om en om de elementen toevoegt en indien één van de twee geen elementen meer heeft de resterende elementen uit de ander toevoegen. Lijkt me niet zo moeilijk toch?quote:Op dinsdag 12 mei 2015 21:24 schreef boem-dikkie het volgende:
Weet iemand hoe je twee arrays merged met dezelfde keys in de juiste volgorde waarbij één array primair is qua volgorde?
Ik heb bijv.
0 => 'nul_primair'
1 => 'een_primair'
2 => 'twee_primair'
En
0 => 'nul'
1 => 'een'
2 => 'twee'
3 => 'drie'
Ik wil ze mergen zodat het als volgt wordt:
0 => 'nul_primair'
1 => 'nul'
2 => 'een_primair'
3 => 'een'
4 => 'twee_primair'
5 => 'twee'
6 => 'drie'
Het gaat niet om en om. Soms moeten er uit de eerste array bijvoorbeeld 3 komen, daarna één uit de andere array, daarna weer 2 uit de één, drie uit de ander, et cetera.quote:Op dinsdag 12 mei 2015 21:29 schreef Monolith het volgende:
[..]
Functie voor schrijven die om en om de elementen toevoegt en indien één van de twee geen elementen meer heeft de resterende elementen uit de ander toevoegen. Lijkt me niet zo moeilijk toch?
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | <?php $result = array(); for($i = 0; $i < max(count($array1), count($array2)); $i += 1) { if(isset($array1[$i])) { $result[] = $array1[$i]; } if(isset($array2[$i])) { $result[] = $array2[$i]; } } ?> |
Hoe weet je dan wat de volgorde is?quote:Op dinsdag 12 mei 2015 21:31 schreef boem-dikkie het volgende:
[..]
Het gaat niet om en om. Soms moeten er uit de eerste array bijvoorbeeld 3 komen, daarna één uit de andere array, daarna weer 2 uit de één, drie uit de ander, et cetera.
De leidende volgorde is de eerste array. De invoegende array heeft zijn volgorde in zijn keys zitten. Dus die array is bijv.quote:
Het is me nog steeds niet helemaal duidelijk wat je probeert te bereiken. Een array in PHP bestaat in wezen altijd uit key => value pairs. Hetzij met expliciete keys, hetzij met impliciete numerieke keys.quote:Op dinsdag 12 mei 2015 21:37 schreef boem-dikkie het volgende:
[..]
De leidende volgorde is de eerste array. De invoegende array heeft zijn volgorde in zijn keys zitten. Dus die array is bijv.
4 => 'hoi'
7 => 'hoi2'
9 => 'hoi3'
Die moet dan in de goede volgorde in de eerste array komen.
Geef eens een voorbeeld, want ik snap er geen zak van.quote:Op dinsdag 12 mei 2015 21:37 schreef boem-dikkie het volgende:
[..]
De leidende volgorde is de eerste array. De invoegende array heeft zijn volgorde in zijn keys zitten. Dus die array is bijv.
4 => 'hoi'
7 => 'hoi2'
9 => 'hoi3'
Die moet dan in de goede volgorde in de eerste array komen.
Je doet nu alweer wat anders, net was het nog een,twee,drie,een_primair.quote:Op dinsdag 12 mei 2015 21:37 schreef boem-dikkie het volgende:
[..]
De leidende volgorde is de eerste array. De invoegende array heeft zijn volgorde in zijn keys zitten. Dus die array is bijv.
4 => 'hoi'
7 => 'hoi2'
9 => 'hoi3'
Die moet dan in de goede volgorde in de eerste array komen.
Dit voorbeeld is om aan te geven wat ik met die keys doe. Maar ik heb het al opgelost.quote:Op dinsdag 12 mei 2015 22:21 schreef TwenteFC het volgende:
[..]
Je doet nu alweer wat anders, net was het nog een,twee,drie,een_primair.
Beschrijf eens duidelijk wat je probleem is, en wat je eigenlijk graag wil bereiken.
Deze voorbeeldjes zijn een beetje wazig, en niet consequent.
1 2 3 4 5 6 | <?php $checkboxvalue = get_field('color'); foreach($checkboxvalue as $key => $check){ echo '<div class="product-color '.$check.'" alt="Color" title="Color"></div>'; }; ?> |
Wat heb je geprobeerd?quote:Op maandag 1 juni 2015 20:09 schreef Drommelsch85 het volgende:
Ik lees uit een veld een waarde uit, en ik probeer de caption (label) in dit stukje HTML te stoppen, waar nu 'Color' staat. Het veld waar de waarde(s) in staan heet ook color, deze bevat meerdere keuzes, waaronder color1, color2, enz. Die hebben echter ook namen zoals Black, Brown, White, Green etc.
[ code verwijderd ]
Volgens deze link moet ik zo, maar ik kom er niet uit. http://wordpress.stackexc(...)el-from-acf-checkbox
thnx
Je zet de value van color als class. Is dat de bedoeling?quote:Op maandag 1 juni 2015 20:09 schreef Drommelsch85 het volgende:
Ik lees uit een veld een waarde uit, en ik probeer de caption (label) in dit stukje HTML te stoppen, waar nu 'Color' staat. Het veld waar de waarde(s) in staan heet ook color, deze bevat meerdere keuzes, waaronder color1, color2, enz. Die hebben echter ook namen zoals Black, Brown, White, Green etc.
[ code verwijderd ]
Volgens deze link moet ik zo, maar ik kom er niet uit. http://wordpress.stackexc(...)el-from-acf-checkbox
thnx
Misschien dat hier iets tussenzit voor je?quote:Op zaterdag 13 juni 2015 00:56 schreef n8n het volgende:
Zijn er hier gebruikers van wamp/xampp/mamp (mamp specifiek)? Vind altijd dat alles in etc/ een bende wordt dus een sandbox lijkt me wel wat. Is het handig om mee te werken? Zijn er vage restricties met de gratis versie? Bedankt.
MAMP Pro gebruiker hier.quote:Op zaterdag 13 juni 2015 00:56 schreef n8n het volgende:
Zijn er hier gebruikers van wamp/xampp/mamp (mamp specifiek)? Vind altijd dat alles in etc/ een bende wordt dus een sandbox lijkt me wel wat. Is het handig om mee te werken? Zijn er vage restricties met de gratis versie? Bedankt.
Wow thanksquote:Op zaterdag 13 juni 2015 01:17 schreef TwenteFC het volgende:
[..]
Misschien dat hier iets tussenzit voor je?
https://puphpet.com/
https://github.com/fideloper/Vaprobash
http://phansible.com/
http://laravel.com/docs/5.1/homestead
Allemaal gratis, wanneer je het dmv VirtualBox doet.
Via VMWare Workstation kost dan wel weer geld.
Ja MAMP is wel easy, en het vervuilt nergens het systeem omdat het in die sandbox blijft. Vagrant vind ik dan weer te veel van het goede (en te traag). Ik ga m'n opties even na.quote:Op zaterdag 13 juni 2015 01:20 schreef Crutch het volgende:
[..]
MAMP Pro gebruiker hier.
Voorheen was ik zo'n held die keurig z'n virtual hosts en hosts file bijhield, maar MAMP maak het wel erg gemakkelijk.
Eenvoudig domeinen aanmaken, de root folder selecteren, server herstarten and you're good to go.
MAMP Pro is imo by far de meest relaxte optie, maar het kost geld. (¤ 39,-)quote:Op zaterdag 13 juni 2015 10:18 schreef n8n het volgende:
[..]
Wow thanks
Edit: allemaal Vagrant zie ik, daar heb ik echt een grondige hekel aan
[..]
Ja MAMP is wel easy, en het vervuilt nergens het systeem omdat het in die sandbox blijft. Vagrant vind ik dan weer te veel van het goede (en te traag). Ik ga m'n opties even na.
Ik gebruik nog even de standaard tools van OSX met Mysql los geïnstalleerd, php 5.5 voldoet momenteel wel en die hostfiles weet ik wel te vinden. Ben nog even student, nog even doorbijtenquote:Op zaterdag 13 juni 2015 13:05 schreef Crutch het volgende:
[..]
MAMP Pro is imo by far de meest relaxte optie, maar het kost geld. (¤ 39,-)
Op zich een goede investering.
Het is maar waar je voor gaat, ik vind vagrant zwaar ideaal. MAMP vind ik persoonlijk een net niet oplossing.quote:Op zaterdag 13 juni 2015 10:18 schreef n8n het volgende:
[..]
Wow thanks
Edit: allemaal Vagrant zie ik, daar heb ik echt een grondige hekel aan
[..]
Ja MAMP is wel easy, en het vervuilt nergens het systeem omdat het in die sandbox blijft. Vagrant vind ik dan weer te veel van het goede (en te traag). Ik ga m'n opties even na.
Ik ga Vagrant gebruiken wanneer ik van een werkgever een workstation met >32GB aan ram krijg. Heb net mcrypt gecompileerd, wat een heerlijk klusje, maar hey, alles loopt nu als de gesmeerde bliksem.quote:Op zaterdag 13 juni 2015 15:08 schreef TwenteFC het volgende:
[..]
Het is maar waar je voor gaat, ik vind vagrant zwaar ideaal. MAMP vind ik persoonlijk een net niet oplossing.
Een speciale reden waarom je hem zelf compiled?quote:Op zaterdag 13 juni 2015 15:26 schreef n8n het volgende:
[..]
Ik ga Vagrant gebruiken wanneer ik van een werkgever een workstation met >32GB aan ram krijg. Heb net mcrypt gecompileerd, wat een heerlijk klusje, maar hey, alles loopt nu als de gesmeerde bliksem.
Een hele mooie uitleg mcrypt http://coolestguidesonthe(...)-development-server/
werkt toch ook?quote:sudo apt-get install php5-mcrypt
OSX kent geen Apt-get, voor zulke zaken heb ik Homebrew, die installeert php met flags waar mcrypt er 1 van is. Helaas lag de php.net server er net uit dus dan maar even handmatig compileren en aan de default installatie toevoegen.quote:Op zaterdag 13 juni 2015 16:43 schreef TwenteFC het volgende:
[..]
Een speciale reden waarom je hem zelf compiled?
[..]
werkt toch ook?
Ik ga geen vagrant installeren. Richt jij per project dan een nieuwe server in? Vind eigenlijk alleen het handmatig managen van de vhost, en hostfile irritant, verder komt het allemaal wel goed.quote:
Nee natuurlijk niet, wij hebben gewoon replica's van onze live omgevingen.quote:Op zaterdag 13 juni 2015 16:45 schreef n8n het volgende:
[..]
OSX kent geen Apt-get, voor zulke zaken heb ik Homebrew, die installeert php met flags waar mcrypt er 1 van is. Helaas lag de php.net server er net uit dus dan maar even handmatig compileren en aan de default installatie toevoegen.
[..]
Ik ga geen vagrant installeren. Richt jij per project dan een nieuwe server in? Vind eigenlijk alleen het handmatig managen van de vhost, en hostfile irritant, verder komt het allemaal wel goed.
Je kunt gewoon in je gulpfile als task 'php -S 127.0.0.1:3000' oid draaien, geen hostfiles meer aanpassen.quote:Op zaterdag 13 juni 2015 13:14 schreef n8n het volgende:
[..]
Ik gebruik nog even de standaard tools van OSX met Mysql los geïnstalleerd, php 5.5 voldoet momenteel wel en die hostfiles weet ik wel te vinden. Ben nog even student, nog even doorbijten
ff naar kijken, al die enterprise dingen komen wel in de enterprise.quote:Op zaterdag 13 juni 2015 22:02 schreef boem-dikkie het volgende:
[..]
Je kunt gewoon in je gulpfile als task 'php -S 127.0.0.1:3000' oid draaien, geen hostfiles meer aanpassen.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 | <?php try { require('config.php'); $con= new PDO( "mysql:host=" . $settings["dbserver"] . ";dbname=" . $settings["dbname"], $settings["dbuser"], $settings["dbpass"]); $sql= "SELECT Subsite , Unit , UserName , UserID , DATE_FORMAT(Startdate, '%d-%m-%Y') Startdate , CASE WHEN DATE_FORMAT(Enddate, '%d-%m-%Y') = '00-00-0000' THEN 'heden' ELSE DATE_FORMAT(Enddate, '%d-%m-%Y') END Enddate , StartURL , EndURL , NrOfDays FROM AllData WHERE Subsite = 'Forum' AND UserID = " . $id ; $stmt=$con->prepare($sql); $stmt->execute(); while($row = $stmt->fetch(PDO::FETCH_ASSOC)) { echo '<tr>'; echo '<td>' . ++$t . '</td>'; echo '<td>' . $row['Unit'] . '</td>'; echo '<td>' . $row['NrOfDays'] . ' dagen</td>'; echo '<td>'; if ($row['StartURL'] <> "0") { echo '<a href="http://forum.fok.nl/topic/' . $row['StartURL'] . '" target="_blank">' . $row['Startdate'] . '</a>'; } else { echo $row['Startdate']; } echo '</td>'; echo '<td>'; if ($row['EndURL'] <> "0") { echo '<a href="http://forum.fok.nl/topic/' . $row['EndURL'] . '" target="_blank">' . $row['Enddate'] . '</a>'; } else { echo $row['Enddate']; } echo '</td>'; echo '</tr>'; } } // Error handeling catch(PDOException $e) { echo '<pre>'; echo 'Regel: '.$e->getLine(). '<br />'; echo 'Bestand: '.$e->getFile(). '<br />'; echo 'Foutmelding: '.$e->getMessage(); echo '</pre>'; } ?> |
1 2 3 | <?php WHERE Subsite = 'Forum' AND UserID = " . $id ; ?> |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 | <?php try { require('config.php'); $con= new PDO( "mysql:host=" . $settings["dbserver"] . ";dbname=" . $settings["dbname"], $settings["dbuser"], $settings["dbpass"]); $sql= "SELECT Subsite , Unit , UserName , UserID , DATE_FORMAT(Startdate, '%d-%m-%Y') Startdate , CASE WHEN DATE_FORMAT(Enddate, '%d-%m-%Y') = '00-00-0000' THEN 'heden' ELSE DATE_FORMAT(Enddate, '%d-%m-%Y') END Enddate , StartURL , EndURL , NrOfDays FROM AllData WHERE Subsite = ? AND UserID = ?" ; $stmt=$con->prepare($sql); $stmt->execute(array('Forum',$id)); while($row = $stmt->fetch(PDO::FETCH_ASSOC)) { echo '<tr>'; echo '<td>' . ++$t . '</td>'; echo '<td>' . $row['Unit'] . '</td>'; echo '<td>' . $row['NrOfDays'] . ' dagen</td>'; echo '<td>'; if ($row['StartURL'] <> "0") { echo '<a href="http://forum.fok.nl/topic/' . $row['StartURL'] . '" target="_blank">' . $row['Startdate'] . '</a>'; } else { echo $row['Startdate']; } echo '</td>'; echo '<td>'; if ($row['EndURL'] <> "0") { echo '<a href="http://forum.fok.nl/topic/' . $row['EndURL'] . '" target="_blank">' . $row['Enddate'] . '</a>'; } else { echo $row['Enddate']; } echo '</td>'; echo '</tr>'; } $stmt->execute(array('Frontpage',$id)); while($row = $stmt->fetch(PDO::FETCH_ASSOC)) { echo '<tr>'; echo '<td>' . ++$t . '</td>'; echo '<td>' . $row['Unit'] . '</td>'; echo '<td>' . $row['NrOfDays'] . ' dagen</td>'; echo '<td>'; if ($row['StartURL'] <> "0") { echo '<a href="http://forum.fok.nl/topic/' . $row['StartURL'] . '" target="_blank">' . $row['Startdate'] . '</a>'; } else { echo $row['Startdate']; } echo '</td>'; echo '<td>'; if ($row['EndURL'] <> "0") { echo '<a href="http://forum.fok.nl/topic/' . $row['EndURL'] . '" target="_blank">' . $row['Enddate'] . '</a>'; } else { echo $row['Enddate']; } echo '</td>'; echo '</tr>'; } } // Error handeling catch(PDOException $e) { echo '<pre>'; echo 'Regel: '.$e->getLine(). '<br />'; echo 'Bestand: '.$e->getFile(). '<br />'; echo 'Foutmelding: '.$e->getMessage(); echo '</pre>'; } ?> |
.quote:Op woensdag 17 juni 2015 11:41 schreef mstx het volgende:
[ code verwijderd ]
Zoiets? (uit mn hoofd)
Zie voorbeelden
http://php.net/manual/en/pdo.prepare.php
Zoiets?quote:Op woensdag 17 juni 2015 11:53 schreef zarGon het volgende:
Weet je trouwens ook of het mogelijk is dat die while() dynamisch kan worden?
Dat er voor elke susbite automatisch een while() gemaakt wordt, in plaats van handmatig voor de subsite 'Forum' en 'Frontpage' een while() te typen (die verder totaal hetzeflde zijn). Heb je 3 subsites, zijn er 3 while()'s enzovoorts enzovoorts.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 | <?php try { require('config.php'); $con= new PDO( "mysql:host=" . $settings["dbserver"] . ";dbname=" . $settings["dbname"], $settings["dbuser"], $settings["dbpass"]); $sql= "SELECT Subsite , Unit , UserName , UserID , DATE_FORMAT(Startdate, '%d-%m-%Y') Startdate , CASE WHEN DATE_FORMAT(Enddate, '%d-%m-%Y') = '00-00-0000' THEN 'heden' ELSE DATE_FORMAT(Enddate, '%d-%m-%Y') END Enddate , StartURL , EndURL , NrOfDays FROM AllData WHERE Subsite = ? AND UserID = ?" ; $stmt=$con->prepare($sql); foreach(array('Forum', 'Frontpage') as $subsite) { $stmt->execute(array($subsite,$id)); while($row = $stmt->fetch(PDO::FETCH_ASSOC)) { echo '<tr>'; echo '<td>' . ++$t . '</td>'; echo '<td>' . $row['Unit'] . '</td>'; echo '<td>' . $row['NrOfDays'] . ' dagen</td>'; echo '<td>'; if ($row['StartURL'] <> "0") { echo '<a href="http://forum.fok.nl/topic/' . $row['StartURL'] . '" target="_blank">' . $row['Startdate'] . '</a>'; } else { echo $row['Startdate']; } echo '</td>'; echo '<td>'; if ($row['EndURL'] <> "0") { echo '<a href="http://forum.fok.nl/topic/' . $row['EndURL'] . '" target="_blank">' . $row['Enddate'] . '</a>'; } else { echo $row['Enddate']; } echo '</td>'; echo '</tr>'; } } } // Error handeling catch(PDOException $e) { echo '<pre>'; echo 'Regel: '.$e->getLine(). '<br />'; echo 'Bestand: '.$e->getFile(). '<br />'; echo 'Foutmelding: '.$e->getMessage(); echo '</pre>'; } ?> |
Zoiets?quote:Op woensdag 17 juni 2015 11:53 schreef zarGon het volgende:
Weet je trouwens ook of het mogelijk is dat die while() dynamisch kan worden?
Dat er voor elke susbite automatisch een while() gemaakt wordt, in plaats van handmatig voor de subsite 'Forum' en 'Frontpage' een while() te typen (die verder totaal hetzeflde zijn). Heb je 3 subsites, zijn er 3 while()'s enzovoorts enzovoorts.
1 2 3 4 5 6 | <?php foreach(array('Forum', 'Frontpage', 'Weblog') as $subsite) { // hier je while loop, waarin je $subsite gebruikt voor deze specifieke subsite } ?> |
Hetzelfde als bij Rockfire zie ik. Ook jij bedankt.quote:
1 2 3 4 | RewriteEngine on RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^(.*)$ /index.php?p=$1 [L] |
quote:Op donderdag 18 juni 2015 13:33 schreef zarGon het volgende:
[..]
Hetzelfde als bij Rockfire zie ik. Ook jij bedankt.
Nog 1 vraag...
Ik wil een URL rewrite (d.m.v. .htaccess):
1) domein.ext/index.php?p=[paginanaam] wil ik kunnen openen met domein.ext/[paginanaam]
2) domein.ext/index.php?p=user&id=[userid] wil ik kunnen openen met domein.ext/user/[userid]
1 is gelukt:
[ code verwijderd ]
Maar 2 lukt me niet om werkend te krijgen. Iemand een idee? .
1 | RewriteRule ^([^/]*)/([^$]*)$ /index.php?p=$1&id=$2 [L] |
Werkt niet.quote:
Je bedoelt het volgende?quote:Op donderdag 18 juni 2015 13:54 schreef KomtTijd... het volgende:
.* matcht ook user/id dus die moet je minder gready maken ( [^/]* ) of je moet de tweede regel bovenaan zetten.
1 2 3 4 5 | RewriteEngine on RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^(.*)$ /index.php?p=$1 [L] RewriteRule ^([^/]*)/([^$]*)$ /index.php?p=$1&id=$2 [L] |
1 2 3 4 5 | RewriteEngine on RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^([^/]*)/([^$]*)$ /index.php?p=$1&id=$2 [L] RewriteRule ^(.*)$ /index.php?p=$1 [L] |
1 2 3 | RewriteEngine on RewriteRule ^(.*)/([0-9]*) /index.php?p=$1&id=$2 [L] RewriteRule ^(.*) /index.php?p=$1 [L] |
Zelfde foutmelding. 500 Internal Server Error.quote:Op donderdag 18 juni 2015 14:18 schreef Rockfire het volgende:
Ik ben niet heel goed in rewrite rules, maar volgens mij werkt dit:
[ code verwijderd ]
Althans volgens deze tester
Forum Opties | |
---|---|
Forumhop: | |
Hop naar: |