Arduino - Anropa hemsida

PIC, AVR, Arduino, Raspberry Pi, Basic Stamp, PLC mm.
Användarvisningsbild
GeekJoan
Admin
Inlägg: 10642
Blev medlem: 26 maj 2003, 15:59:27
Ort: Solna

Re: Arduino - Anropa hemsida

Inlägg av GeekJoan »

Hittade denna sidan. Tror vi kan hitta på mer bus. http://apikatalogen.se/
Användarvisningsbild
GeekJoan
Admin
Inlägg: 10642
Blev medlem: 26 maj 2003, 15:59:27
Ort: Solna

Re: Arduino - Anropa hemsida

Inlägg av GeekJoan »

Snabbisfråga:
else satsen här nedan till vilken av alla if tillhör den?

Kod: Markera allt

		if($bussar["ResponseData"]["Buses"][$i]["LineNumber"] == "509")
		{
			if($bussar["ResponseData"]["Buses"][$i]["Destination"] == "Brommaplan")
				{
				echo "";
				}	
			if($bussar["ResponseData"]["Buses"][$i]["Destination"] == "Danderyds sjukhus")
			{
			?>
				<tr>
				<td bgcolor="#0e4165"> <?php echo "509";?>
				<td bgcolor="#0e4165"> <?php echo "" . $bussar["ResponseData"]["Buses"][$i]["DisplayTime"] . " ";

				if($bussar["ResponseData"]["Buses"][$i]["Deviations"][0] != NULL) 
				{
         			if($bussar["ResponseData"]["Buses"][$i]["Deviations"][0]["Text"] == "Förseningar pga framkomlighetsproblem") 
         			{
         			?>
         				<td bgcolor="#0e4165"> <?php echo "Går enligt tidtabell"; ?> </td>
			    		<td bgcolor="#0e4165"> <?php echo "..."; ?> </td>
						<?php
         			}
					else 
					{ ?>
			    	<td bgcolor="#b80000"> <?php echo " " . $bussar["ResponseData"]["Buses"][$i]["Deviations"][0]["Text"] . " "; ?> </td>
			    	<td bgcolor="#b80000"> <?php echo " " . $bussar["ResponseData"]["Buses"][$i]["ExpectedDateTime"] . " "; ?> </td>
			    	<?php
			    }
				} 			   
			}
		}
	}

Resultat: http://geekjoan.com/multiscreen/sldata_torg_web.php
Jag trodde det var OM Deviations"][0] != NULL INTE är = NULL så gör följande:
OM Text= Förseningar pga framkomlighetsproblem ???
å så kunde jag lägga till echo ny text och expecteddatetime
ANNARS
skriv ut den går enligt tidtabell.
Kulla
Inlägg: 1264
Blev medlem: 7 januari 2010, 10:06:11
Ort: Sandared
Kontakt:

Re: Arduino - Anropa hemsida

Inlägg av Kulla »

Den tillhör denna if($bussar["ResponseData"]["Buses"][$i]["Deviations"][0]["Text"] == "Förseningar pga framkomlighetsproblem")
Användarvisningsbild
Mickecarlsson
EF Sponsor
Inlägg: 3743
Blev medlem: 15 april 2017, 18:06:15
Ort: Malmö
Kontakt:

Re: Arduino - Anropa hemsida

Inlägg av Mickecarlsson »

Skriv så här i stället:
Jag ändrade raden if($bussar["ResponseData"]["Buses"][$i]["Deviations"][0]["Text"] != "Förseningar pga framkomlighetsproblem")
från == (lika med) till != (skilt från)

Kod: Markera allt

<?php
// Om vi inte får NULL (!= NULL) har vi data            
if($bussar["ResponseData"]["Buses"][$i]["Deviations"][0] != NULL)
  {
  // Om vi inte har (!=) texten "Förseningar pga framkomlighetsproblem" skriv ut nedan text
  if($bussar["ResponseData"]["Buses"][$i]["Deviations"][0]["Text"] != "Förseningar pga framkomlighetsproblem")
    {
    ?>
    <td bgcolor="#0e4165"> <?php echo "Går enligt tidtabell"; ?> </td>
    <td bgcolor="#0e4165"> <?php echo "..."; ?> </td>
    <?php
    }
  // Om vi har texten "Förseningar pga framkomlighetsproblem" visa detta i stället
  else
    { ?>
    <td bgcolor="#b80000"> <?php echo " " . $bussar["ResponseData"]["Buses"][$i]["Deviations"][0]["Text"] . " "; ?> </td>
    <td bgcolor="#b80000"> <?php echo " " . $bussar["ResponseData"]["Buses"][$i]["ExpectedDateTime"] . " "; ?> </td>
    <?php
    }
  }             
?>
Eller så behåller du din kod och byter plats på texten:

Kod: Markera allt

<?php
// Om vi inte får NULL (!= NULL) har vi data            
if($bussar["ResponseData"]["Buses"][$i]["Deviations"][0] != NULL)
  {
  // Är där förseningar? Visa dessa
  if($bussar["ResponseData"]["Buses"][$i]["Deviations"][0]["Text"] == "Förseningar pga framkomlighetsproblem")
    {
    ?>
    <td bgcolor="#b80000"> <?php echo " " . $bussar["ResponseData"]["Buses"][$i]["Deviations"][0]["Text"] . " "; ?> </td>
    <td bgcolor="#b80000"> <?php echo " " . $bussar["ResponseData"]["Buses"][$i]["ExpectedDateTime"] . " "; ?> </td>
    <?php
    }
  // Annars går bussarna i tid
  else
    { ?>
    <td bgcolor="#0e4165"> <?php echo "Går enligt tidtabell"; ?> </td>
    <td bgcolor="#0e4165"> <?php echo "..."; ?> </td>
    <?php
    }
  }             
?>
Användarvisningsbild
GeekJoan
Admin
Inlägg: 10642
Blev medlem: 26 maj 2003, 15:59:27
Ort: Solna

Re: Arduino - Anropa hemsida

Inlägg av GeekJoan »

Man kan ju tycka att det är så det borde funka, men av någon anledning så gör det inte det.
Resultat:
fel.png
Här är koden i sin helhet. Jag har lagt två versioner av json anropet på min server ett där det är förseningar och ett utan.

Kod: Markera allt

<html>
<head>
    <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
    <title>Trafik</title>
    <style>
        td{font-family:verdana;font-size:12px;color:#FFFFFF;}
    </style>
</head>
<body bgcolor="#203155" leftmargin="1" topmargin="1">

<?php
//Här kan man ändra om man vill ha med förseningar eller inte.
$json = file_get_contents('http://geekjoan.com/multiscreen/sldata_torg_med_fel.json');
//$json = file_get_contents('http://geekjoan.com/multiscreen/sldata.json');

	$bussar = json_decode($json,true);
	$antal_bussar = count($bussar["ResponseData"]["Buses"]);
?>	
	    <table border="0" cellspacing="1" cellpadding="1">
        <tr bgcolor="#111111">
            <td style="width: 40px" valign="top"><b>Buss</b></td>
            <td style="width: 70px" valign="top"><b>Tid</b></td>
            <td style="width: 300px" valign="top"><b>Störningar</b></td>
            <td style="width: 150px" valign="top"><b>Ny beräknad tid</b></td>
        </tr>
        
<?php
	// Plockar bort bussar mot brommaplan
	for ($i =0; $i < $antal_bussar; $i++)
	{
		if($bussar["ResponseData"]["Buses"][$i]["LineNumber"] == "509")
		{
			if($bussar["ResponseData"]["Buses"][$i]["Destination"] == "Brommaplan")
				{
				echo "";
				}	
			if($bussar["ResponseData"]["Buses"][$i]["Destination"] == "Danderyds sjukhus")
			{
			?>
				<tr>
				<td bgcolor="#0e4165"> <?php echo "509";?>
				<td bgcolor="#0e4165"> <?php echo "" . $bussar["ResponseData"]["Buses"][$i]["DisplayTime"] . " ";

				if($bussar["ResponseData"]["Buses"][$i]["Deviations"][0] != NULL)
				{
         			if($bussar["ResponseData"]["Buses"][$i]["Deviations"][0]["Text"] == "Förseningar pga framkomlighetsproblem")
         			//if($bussar["ResponseData"]["Buses"][$i]["Deviations"][0]["Text"] != "Förseningar pga framkomlighetsproblem")
         			{
         			?>
         				<td bgcolor="#0e4165"> <?php echo "Går enligt tidtabell"; ?> </td>
			    		<td bgcolor="#0e4165"> <?php echo "..."; ?> </td>
						<?php
         			}
					else 
					{ ?>
			    	<td bgcolor="#b80000"> <?php echo " " . $bussar["ResponseData"]["Buses"][$i]["Deviations"][0]["Text"] . " "; ?> </td>
			    	<td bgcolor="#b80000"> <?php echo " " . $bussar["ResponseData"]["Buses"][$i]["ExpectedDateTime"] . " "; ?> </td>
			    	<?php
			    }
				} 			   
			}
		}
	}


?>
		</tr>
		</table>
</body>
</html>


Du har inte behörighet att öppna de filer som bifogats till detta inlägg.
Användarvisningsbild
GeekJoan
Admin
Inlägg: 10642
Blev medlem: 26 maj 2003, 15:59:27
Ort: Solna

Re: Arduino - Anropa hemsida

Inlägg av GeekJoan »

OT: Av en händelse så såg jag på Her Alibi och författaren i filmen har en laptop av märket Zenith så nu vet vi vad Mickecarlsson kodar på...
her_alibi_supersport_1.jpg
Du har inte behörighet att öppna de filer som bifogats till detta inlägg.
Användarvisningsbild
GeekJoan
Admin
Inlägg: 10642
Blev medlem: 26 maj 2003, 15:59:27
Ort: Solna

Re: Arduino - Anropa hemsida

Inlägg av GeekJoan »

BTW, vad kodar ni i för program? Skulle verkligen behöva något nytt som talar om att denna { tillhör denna } så man kan ha kolla på alla [{(.
Användarvisningsbild
Mickecarlsson
EF Sponsor
Inlägg: 3743
Blev medlem: 15 april 2017, 18:06:15
Ort: Malmö
Kontakt:

Re: Arduino - Anropa hemsida

Inlägg av Mickecarlsson »

Jag äter frukost nu, kollar på din kod om en stund.
Editorerna jag använder heter
1. Sublime Text, den är inte gratis, men otroligt användbar. Finns i testversion. Och finns för Windows och Linux.
2. Notepad++, gratis, finns endast för Windows men är otroligt kraftfull.

Båda har syntax hilight och håller reda på ([ och { genom att sätta ett undlerline-tecken på motsvarande tecken när man sätter cursorn på ett av dom.
Användarvisningsbild
Mickecarlsson
EF Sponsor
Inlägg: 3743
Blev medlem: 15 april 2017, 18:06:15
Ort: Malmö
Kontakt:

Re: Arduino - Anropa hemsida

Inlägg av Mickecarlsson »

Hittade felet:

Kod: Markera allt

if($bussar["ResponseData"]["Buses"][$i]["Deviations"][0]["Text"] == "Förseningar pga framkomlighetsproblem") 
Det ska stå:

Kod: Markera allt

if($bussar["ResponseData"]["Buses"][$i]["Deviations"][0]["Text"] == "Förseningar pga framkomlighetsproblem") 
Användarvisningsbild
rvl
Inlägg: 5719
Blev medlem: 5 april 2016, 14:58:53
Ort: Helsingfors

Re: Arduino - Anropa hemsida

Inlägg av rvl »

Har också testat Sublime en del och har inte nåt att klaga på, efter en liten borteditering av nagscreenen men det ska vi inte diskutera här. I synnerhet när jag hört från olika håll "varför använda Sublime när det finns Atom?" Helt öppet och gratis: Atom.

Visual studio code har jag inte testat än, men den verkar rekommenderas varmt i Full Stack kretsar.
Kulla
Inlägg: 1264
Blev medlem: 7 januari 2010, 10:06:11
Ort: Sandared
Kontakt:

Re: Arduino - Anropa hemsida

Inlägg av Kulla »

När jag skriver i PHP då är det PHP Storm, inte gratis men värt pengarna.
Har också Sublime, använder som text editor på alla platform, den är guldvärt.

Testat Visual Studio Code för lite C programmering i samband med ESP8266 och ESP32.

Atom har jag också använt vid Javascript programmering, den är helt ok, haft några problem att den äter CPU när den borde inte göra.
Användarvisningsbild
GeekJoan
Admin
Inlägg: 10642
Blev medlem: 26 maj 2003, 15:59:27
Ort: Solna

Re: Arduino - Anropa hemsida

Inlägg av GeekJoan »

Nu verkar det funka, ändrade lite till: http://geekjoan.com/multiscreen/alla1.htm
Kulla
Inlägg: 1264
Blev medlem: 7 januari 2010, 10:06:11
Ort: Sandared
Kontakt:

Re: Arduino - Anropa hemsida

Inlägg av Kulla »

Gillar namn på sidan :twisted: :lol:
Användarvisningsbild
sodjan
EF Sponsor
Inlägg: 43148
Blev medlem: 10 maj 2005, 16:29:20
Ort: Söderköping
Kontakt:

Re: Arduino - Anropa hemsida

Inlägg av sodjan »

Dra ihop fältet "Beskrivning". Det är ändå radbrutet och behöver inte den bredden.
Ta bort texterna i de färgade fälten till höger, de finns ändå under tabellen, och
färgerna i sig talar för sig själva.
Användarvisningsbild
GeekJoan
Admin
Inlägg: 10642
Blev medlem: 26 maj 2003, 15:59:27
Ort: Solna

Re: Arduino - Anropa hemsida

Inlägg av GeekJoan »

Ska anpassa sidan till en stående skärm som jag har ligger och väntar. Men det får vänta tills allt som ska vara med är klart.
Skriv svar