Frage von askmeask, 17

Wie kann ich mit PHP Bilder als Buttons ausgeben?

Hallo

Ich versuche per Web-Interface meine GPIO Ports-vom Raspberry zu steuern.

Ich hatte schon ein schönes Script das mit Node schaffte, jedoch funktioniert dies schon länger nicht mehr. DA ich nur wenige Kenntnisse in C habe, griff ich doch wieder auf ein Vorgefertigtes zurück: http://www.instructables.com/id/Simple-and-intuitive-web-interface-for-your-Rasp...

Nun funktioniert die Ausgabe mit folgender Zeile der Bilder nicht richtig:

echo ("<img id='button_".$i."' src='data/img/red/red_".$i.".jpg' onclick='change_pin (".$i.");' />");

Kann ich irgendwie Default-Buttons generieren, oder wisst ihr gerade wo mein Problem liegt?

Gruss

Antwort
von mastema666, 12

Was genau funktioniert da denn nicht?

Beim echo kann man die Klammern zwar weglassen und die Anführungszeichen würde ich umgekehrt benutzen (einfache / doppelte) aber einen Fehler sehe ich in dem Code nicht. Falls die Bilder einfach nicht angezeigt werden, gib den Pfad dazu vielleicht mal nicht relativ an, sondern absolut, also mit einem "/" am Anfang.

Antwort
von LeBonyt, 11

Hm die. Beschreibung' Bildausgabe funktioniert nicht richtig' ist zu ungenau.

Wahrscheinlich meinst du: Die Bilder werden nicht angezeigt, aber eines fällt mir auf. Tausche mal die Anführungszeichen aus. Den String in einfache Anführungsstriche und den HTML Code mit doppelten Anführungsstrichen. Ist der Pfad zu den Bildern richtig? Auch die onclick funnction kann defekt sein. JavaScript Fehler?

Wenn Du unbedingt einfachste Button direkt mit PHP generieren willst,kannst du die GD Funktionen verwenden. Wenn das grafische Ergebnis allerdings ein Designer sieht, wird er sich sofort übergeben.

Kommentar von askmeask ,

Genau, die Bilder werden nicht angezeigt

....

<?php

$val_array = array(0,0,0,0,0,0,0,0);

//this php script generate the first page in function of the file

for ( $i= 0; $i<4; $i++) {

//set the pin's mode to output and read them

system("gpio mode ".$i." out");

exec ("gpio read ".$i, $val_array[$i], $return );

}

//for loop to read the value

$i =0;

for ($i = 0; $i < 4; $i++) {

//if off

if ($val_array[$i][0] == 0 ) {

echo ("Relais ".$i." ein ");

}

//if on

if ($val_array[$i][0] == 1 ) {

echo (' }

}

?>

Hab es hier mal noch mit Button probiert, aber die Bilder werden immer noch nicht angezeigt.

Kommentar von kuechentiger ,

Da fehlen Klammern in dem Teil. Oder hast du das unvollständig hier rein kopiert?

Antwort
von askmeask, 6

Scheint wohl ein Problem mit dem Skript zu geben, werde dieses nochmals durchgehen.

Antwort
von kuechentiger, 11

echo ('<img id="button_'.$i.'" src="data/img/red/red_'.$i.'.jpg" onclick="change_pin ('.$i.');" />');

Kommentar von askmeask ,

Hab es so geändert, die Bilder werden aber leider immer noch nicht angezeigt.

Kommentar von kuechentiger ,

stimmt vielleicht der Pfad zum Bild nicht?

Keine passende Antwort gefunden?

Fragen Sie die Community