Besten,

Men heeft me gevraagd om voor de site van onze zweefvliegclub een script te schrijven, waarmee ik vluchtgegevens uit een tabel haal van een internetadres, en deze gegevens toon. Het script moet in php zijn en dit zullen we gebruiken op onzo Drupal site. Ik programmeer normaal gezien enkel in Bascom, C++ en een beetje python. Ik zit in het 6de middelbaar (BE). Het is me niet volledig duidelijk hoe hier aan te beginnen.

Ik zou dus in het script eerst de username opvragen. Deze naam zet ik dan als een variabele. Iedere persoon heeft een eigen cloudpagina met zijn eigen gegevens. Dus de variabele moet een deel worden van de link waarop ik de gegevens ophaal. Ik hoop dat jullie een beetje begrijpen wat ik bedoel en dat jullie me een beetje verder kunnen helpen.

Voorbeeld van een dergelijke link http://gvv-dac.cloudapp.net/site/vluchten.php?mlogin="$name";

de $name is dus de variabele voor de naam.

De gegevens staan op de cloud in een tabel in deze vorm: datum credit debit saldo omschrijving

Mvg Harald

<?php
global $user;
$user="($user->name)";
?>
Zoiets:

<?php
$users = array('Piet', 'Henk', 'Kees38');

foreach($users as $user)
{
$info= file_get_contents("http://gvv-dac.cloudapp.net/site/vluchten.php?mlogin=" . $user);
$info= tussen($info, '<table>', '</table');
$info= tussen($info, '<tr>', '</tr>';
$info = explode("<td>", $html);

print_r($info);

}
?>

En kan je ook wellicht een werkende HTML geven? Of een geldige login-naam? Dan kunnen wij ook meer dan enkel gokken.


En deze functie gebruik je als tussen():

<?php
function tussen($string, $start, $end) {
$string = " " . $string;
$ini = strpos($string, $start);
if ($ini == 0)
return "";
$ini += strlen($start);
$len = strpos($string, $end, $ini) - $ini;
return substr($string, $ini, $len);
}

?>
Bedankt voor je reactie! Welk deel bedoel je qua Html? die van de tabel? De Database is momenteel leeg dus dat gaat nu nog niet. De database wordt geregeld door iemand anders. Ik heb hier wel een werkende login: bert_vaneyken (niet mijn login dus gelieve de privacy een beetje te respecteren, bedankt!)
In uw code zie ik dat je de users in een array hebt staan. De bedoeling is echter dat, door het commando dat ik schreef, de site een response geeft op welke user er aangemeld is. Dat kan er dus telkens maar één zijn.

Mvg Harald
De hamvraag is wat voor response je krijgt: HTML, XML, JSON, jammer op zijn chinees (aka YAML)?
Ger van Steenderen op 17/11/2014 20:57:19

De hamvraag is wat voor response je krijgt: HTML, XML, JSON, jammer op zijn chinees (aka YAML)?


De response moet normaal gezien puur HTML zijn.

Mvg Harald
Als dit puur HTML is:

no results   	
</table>

Excuus voor het sarcasme, maar als we het over een cloud hebben denk ik meestal aan een API die een XML of JSON response geeft.
Ik ben wel benieuwd hoe de broncode eruit ziet als je een gebruikersnaam met resultaten opgeeft.
Ger van Steenderen op 17/11/2014 21:18:20

Als dit puur HTML is:

no results   	
</table>

Excuus voor het sarcasme, maar als we het over een cloud hebben denk ik meestal aan een API die een XML of JSON response geeft.
Ik ben wel benieuwd hoe de broncode eruit ziet als je een gebruikersnaam met resultaten opgeeft.


Er zit ook momenteel geen content in. (Ik geloof) dat deze er in zal komen in html. Ben niet zeker, dit zal ik dan ook navragen.

Vraagje, is http_get beter geschikt dan file_get_contents?

Don't kill me if I'm wrong, ben nogal nieuw in dit soort programmeren. :)

Wat voor commando geef je dan?

En dat 'internetadres': is dat dezelfde site als waar jij je PHP-script zet?
Zo ja: dan kan je verbinding maken met de SQL-database.
Zo nee: dan moet je toch gaan 'rippen', tenzij je een API hebt.
Neen, dit is een andere server en een ander domein. En over welk commando heeft u het?

Edit: werkende link: http://gvv-dac.cloudapp.net/site/kk.php?mlogin=bert_vaneyken

"code" tot nu toe.

<?php
global $user;
$user="($user->name)";


{
$html = file_get_contents("http://gvv-dac.cloudapp.net/site/vluchten.php?mlogin=" . $user);
echo $html;

//misschien beter geschikt?
// $html = http_get("http://gvv-dac.cloudapp.net/site/vluchten.php?mlogin=" . $user);
//echo $html;

}

?>

Reageren