Zie hier de code om de waarden van 2 keuzelijsten te laten zien. Gek genoeg krijg ik bij de eerste nu wel data en bij de tweede niet. Separaat zal ik de output posten:
<?php
// ========================================= SportLink Keuzelijst Leeftijdscategorieen ==================================================
echo '<h1>SportLink Keuzelijst Leeftijdscategorieen</h1>';
$url='https://data.sportlink.com/keuzelijst-leeftijdscategorieen?client_id=XXXXXX';
$ch = curl_init();
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_URL,$url);
$result=curl_exec($ch);
curl_close($ch);
$programma_output = json_decode($result, true);
$aantalrecords = count($programma_output);
echo 'Aantal records = ' . $aantalrecords . '<br/>';
echo '<table width="100%" border="0" cellspacing="0" cellpadding="2">';
echo '<tr><strong>';
echo '<td class="blue"><strong>Waarde</strong></td>';
echo '<td class="blue"><strong>Omschrijving</strong></td>';
echo '</strong></tr>';
for ($i = 0; $i < $aantalrecords; $i++)
{
$class = "odd";
$color = "blue";
echo '<tr class="' . $class . '">';
echo '<td class="'.$color.'">' . $programma_output[$i]["waarde"] . '</td>';
echo '<td class="'.$color.'">' . $programma_output[$i]["omschrijving"] . '</td>';
echo '</tr>';
}
echo '</table>';
//var_dump($programma_output);
// ========================================= SportLink Keuzelijst Competitiesoorten ==================================================
echo '<h1>SportLink Keuzelijst Competitiesoorten</h1>';
$url='https://data.sportlink.com/keuzelijst-competitiesoorten?client_id=XXXXXX';
$ch = curl_init();
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_URL,$url);
$result=curl_exec($ch);
curl_close($ch);
$programma_output = json_decode($result, true);
$aantalrecords = count($programma_output);
echo 'Aantal records = ' . $aantalrecords . '<br/>';
echo '<table width="100%" border="0" cellspacing="0" cellpadding="2">';
echo '<tr><strong>';
echo '<td class="blue"><strong>Waarde</strong></td>';
echo '<td class="blue"><strong>Omschrijving</strong></td>';
echo '</strong></tr>';
for ($i = 0; $i < $aantalrecords; $i++)
{
$class = "odd";
$color = "blue";
echo '<tr class="' . $class . '">';
echo '<td class="'.$color.'">' . $programma_output[$i]["waarde"] . '</td>';
echo '<td class="'.$color.'">' . $programma_output[$i]["omschrijving"] . '</td>';
echo '</tr>';
}
echo '</table>';
//var_dump($programma_output);
echo 'Klaar';
?>
SportLink Keuzelijst Leeftijdscategorieen
Aantal records = 4
Waarde | Omschrijving |
alles | Alles |
senioren | Senioren |
junioren | Junioren |
pupillen | Pupillen |
SportLink Keuzelijst Competitiesoorten
Aantal records = 0
Waarde | Omschrijving |
Klaar
Het wordt steeds gekker. Als ik de pagina refresh krijg ik telkens andere resultaten. Ik heb nu al de volgende varianten gezien:
Zie hier. Geen verandering in code, enkel een refresh van de pagina:
SportLink Keuzelijst Leeftijdscategorieen
Aantal records = 4
Waarde | Omschrijving |
alles | Alles |
senioren | Senioren |
junioren | Junioren |
pupillen | Pupillen |
SportLink Keuzelijst Competitiesoorten
Aantal records = 5
Waarde | Omschrijving |
alles | Alles |
beker | Beker |
regulier | Regulier |
regulier_nacompetitie | Regulier + nacompetitie |
nacompetitie | Nacompetitie |
Klaar
En nu:
SportLink Keuzelijst Leeftijdscategorieen
Aantal records = 0
Waarde | Omschrijving |
SportLink Keuzelijst Competitiesoorten
Aantal records = 0
Waarde | Omschrijving |
Klaar
Tot mijn grote verbazing doet-ie het nou consequent goed! @Remko Hayes, je zou mijn code dus eens kunnen proberen ...
Hallo Martin,
Ik had je bericht niet eerder gezien omdat ik niet geabonneerd was op dit draadje. Ik zou je code heel graag proberen maar ik zou niet weten hoe ik deze combineer met het programma.
Hoe moet ik dan een code voor een keuzelijst voor periodestanden toevoegen? kan iemand dit mij vertellen
In een ander draadje is gesignaleerd dat de services rondom keuzelijsten niet altijd het gewenste resultaat geven. Daarom lijkt het mij goed om hier een apart draadje over te openen,
Het eerste experiment dat ik gedaan heb, was met keuzelijst-leeftijdscategorieen. Op de Sportlink-pagina Javascript-library leverde die in de testrun geen gegevens op.
Ook mijn eigen code (zie onder) leverde geen records op.
Gek genoeg veranderde dat toen ik op dezelfde WP-pagina daarna een andere keuze-lijst (competitiesoorten), die in de testrun wel records opleverde, aanriep. Toen leverde de leeftijdscategorieen ineens wel data op, en de tweede reeks (competitiesoorten) niets. Erg vreemd. (voor code:zie verder).
<?php
// ========================================= SportLink Keuzelijst Leeftijdscategorieen ==================================================
echo '<h1>SportLink Keuzelijst Leeftijdscategorieen</h1>';
$url='https://data.sportlink.com/keuzelijst-leeftijdscategorieen?client_id=hC9BDSJvGF';
$ch = curl_init();
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_URL,$url);
$result=curl_exec($ch);
curl_close($ch);
$programma_output = json_decode($result, true);
$aantalrecords = count($programma_output);
echo 'Aantal records = ' . $aantalrecords . '<br/>';
echo '<table width="100%" border="0" cellspacing="0" cellpadding="2">';
echo '<tr><strong>';
echo '<td class="blue"><strong>Waarde</strong></td>';
echo '<td class="blue"><strong>Omschrijving</strong></td>';
echo '</strong></tr>';
for ($i = 0; $i < $aantalrecords; $i++)
{
$class = "odd";
$color = "blue";
echo '<tr class="' . $class . '">';
echo '<td class="'.$color.'">' . $programma_output[$i]["waarde"] . '</td>';
echo '<td class="'.$color.'">' . $programma_output[$i]["omschrijving"] . '</td>';
echo '</tr>';
}
echo '</table>';
//var_dump($programma_output);
?>