CronJob-Service
bei SELFPHP mit ...
|
+ minütlichen Aufrufen
+ eigenem Crontab Eintrag
+ unbegrenzten CronJobs
+ Statistiken
+ Beispielaufrufen
+ Control-Bereich
Führen Sie mit den CronJobs von
SELFPHP zeitgesteuert Programme
auf Ihrem Server
aus. Weitere Infos
|
:: Anbieterverzeichnis ::
Globale Branchen
Informieren Sie sich über ausgewählte Unternehmen im Anbieterverzeichnis von SELFPHP
:: Newsletter ::
Abonnieren Sie hier den kostenlosen
SELFPHP Newsletter!
|
HTML, CSS und JavaScript Help! Hier gibt es Hilfe zu HTML, CSS und JavaScript Problemen |
11.04.2013, 17:41:10
|
Anfänger
|
|
Registriert seit: Apr 2013
Alter: 34
Beiträge: 10
|
|
Diashow mit variablen Bildern in den Ordnern
Hallo, ich möchte eine Diashow machen bei der die anzahl der Bilder in den jeweiligen Ordnern variabel ist. Die einzelnen Ordner werden je nach Tageszeitpunkt und Uhrzeit angesprochen.
Nun, ist mein Problem, dass ich die Übergabe der Anzahl von den Bildern von PHP in JavaScript einfach nicht funktioniert.
Ich habe es folgendermaßen versucht.
index.php mit JS-Code
Code:
if (StdAktuell >= 11 && StdAktuell <18)
document.write('<iframe src="dia.html"> </iframe>');
dia.html der PHP-Code
PHP-Code:
<?php $Datum=date('d'); $handle=opendir($Datum); // hier wird der gewünschte Ordner angegeben $count=0; // counter wird auf 0 gesetzt while ($file = readdir ($handle)) { if ($file != "." && $file != "..") { $count++; // counter wird erhöht //echo "filen"; // hier könntest du dieeinzelnen files // ausgeben lassen } } closedir($handle); } ?>
dia.html der JS-Code
Code:
var DatumHeute = new Date();
var Wochentag = DatumHeute.getDate();
var variable = "<?php echo $count;?>";
for(i=1; i<variable;i++) {var def_imges=new Array (Wochentag+'/Folie'+i+'.jpg');}
Genau jetzt ist das Problem, dass die variable undefined wird, da die nichts übertragen wird.
Meiner Ansicht nach müsste es funktionieren.
Ich hoffe einer von euch kann mir weiterhelfen und mir sagen, wie ich das Problem lösen kann oder mir einen denkanstoss für eine ander Lösung geben.
Danke und viele Grüße
Rewa
|
11.04.2013, 18:02:21
|
|
Administrator
|
|
Registriert seit: Jul 2004
Beiträge: 3.707
|
|
AW: Diashow mit variablen Bildern in den Ordnern
Hallo und willkommen hier im Forum.
Zitat:
Zitat von Rewa
[..]
dia.html der JS-Code
Code:
var DatumHeute = new Date();
var Wochentag = DatumHeute.getDate();
var variable = "<?php echo $count;?>";
for(i=1; i<variable;i++) {var def_imges=new Array (Wochentag+'/Folie'+i+'.jpg');}
|
PHP-Code:
echo 'var DatumHeute = new Date();
var Wochentag = DatumHeute.getDate();
var variable = ' .$count .';
for(i=1; i<variable;i++) {var def_imges=new Array (Wochentag+\'/Folie\'+i+\'.jpg\');}';
Da die Einbindung des JS-Codes in Deine dia. php (*.html werden nicht geparst - es sei denn es ist so eingestellt, was ich nicht glaube) nicht ersichtlich, kann ich Dir nur diesen Denkanstoss geben.
__________________
Gruss vt1816
Erwarte nicht, dass sich jemand mehr Mühe mit der Antwort gibt als Du Dir mit der Frage.
. . . . . Feedback wäre wünschenswert
Ich werde keinen privaten 1:1 Support leisten, außer ich biete ihn ausdrücklich an.
Ansosnten gilt: Hilfe ausserhalb dieses Thread (PN, WhatsApp, Skype, Mail, ICQ, etc...) nur per Barzahlung oder Vorauskasse!
Wenn man sich selbst als "Noob" bezeichnet, sollte man die Finger davon lassen.
Wenn man gewillt ist daran etwas zu ändern, lernt man Grundlagen!
|
12.04.2013, 11:18:31
|
Anfänger
|
|
Registriert seit: Apr 2013
Alter: 34
Beiträge: 10
|
|
AW: Diashow mit variablen Bildern in den Ordnern
Danke schön vt1816! :)
Die übertragung der Variable funktioniert einwandfrei :) nur hab ich jetzt das Problem, dass ich den Syntaktischen Ausdruck nicht korrekt wiederspiegeln kann.
Der JS-Code um DiaShow zu erreichen sah so aus.
Code:
this.b_insert= function(){
var b, thestylid, thez, thevis, slidehei;
slidehei=(showcontr)?(pichei+25):(pichei); //add space for the controls
var myhtml="<div style='width:"+picwid+"px;height:"+slidehei+"px;'>";
myhtml+="<div style='position:absolute;width:"+picwid+"px;height:"+pichei+"px;'>";
for(b=1;b<=emax;b++){
thez=1;thevis='hidden';
if(b<=1) {thez=2; thevis='visible';}
myhtml+="<div id='img_"+slideid+"_"+b+"' style='font-size:0;height:"+pichei+"px;width:"+picwid+"margin:0;padding:0;text-align:center;visibility:"+thevis+";z-index:"+thez+";position:absolute;left:0;top:0;width:"+picwid+"px;height:"+pichei+"px;background-color:"+backgr+";'>";
myhtml+="<img src='"+imges[(b-1)]+"' style='vertical-align:middle;border:0;height:600px;width:1000px' alt=''/></div>";
}
myhtml+="</div>";
Und es wird in HTML dann so ausgegeben:
<div style="font-size: 0px; padding: 0px; text-align: center; visibility: hidden; z-index: 1; position: absolute; left: 0px; top: 0px; width: 800px; height: 600px; opacity: 0;" id="img_0_1"><img alt="" style="vertical-align:middle;border:0;height:600px;width:1000px" src="Freitag/Folie2.jpg"></div>
Leider, wird es bei mir in PHP mit dieser Codierung:
PHP-Code:
echo ' this.b_insert= function(){
var b, thestylid, thez, thevis, slidehei; slidehei=(showcontr)?(pichei+25):(pichei); //add space for the controls var myhtml=\'<div style="width:"+picwid+ "px;height:" +slidehei+"px;" >\'; myhtml+=\'<div style="position:absolute;width:"+picwid+"px;height:"+pichei+"px;">\'; for(b=1;b<=emax;b++){ thez=1;thevis=\'hidden\'; if(b<=1) {thez=2; thevis=\'visible\';} myhtml+=\'<div id=\'img_\'+slideid+\'_\'+b+" \' style="font-size:0;height:"+pichei+"px;width:"+picwid+"margin:0;padding:0;text-align:center;visibility:"+thevis+";z-index:"+thez+";position:absolute;left:0;top:0;width:"+picwid+"px;height:"+pichei+"px;background-color:"+backgr+";\'>\'; myhtml+=\'<img src=\' "+imges[(b-1)]+\'" style="vertical-align:middle;border:0;height:600px;width:1000px" alt=""/></div>\'; } myhtml+=\'</div>\'; ';
So Ausgegeben:
<div +pichei+"px;width:"+picwid+"margin:0;padding:0;text-align:center;visibility:"+thevis+";z-index:"+thez+";position:absolute;left:0;top:0;width:"+picwid+"px;heigh t:"+pichei+"px;background-color:"+backgr+";'="" style="font-size:0;height:" '="" slideid'_'+b+"="" id="img_">';
myhtml+='<img alt="" style="vertical-align:middle;border:0;height:600px;width:1000px" "="" src=" "+imges[(b-1)]+"></div>
Ich hab es mit verschieden Lösungsansätzen ausprobiert, jedoch hat dies nicht zum erfolg geführt.
Gruß Rewa
|
12.04.2013, 12:25:05
|
|
Administrator
|
|
Registriert seit: Jul 2004
Beiträge: 3.707
|
|
AW: Diashow mit variablen Bildern in den Ordnern
Da musst Du wohl noch mal beim escapen Deiner ' bzw. " nacharbeiten.
__________________
Gruss vt1816
Erwarte nicht, dass sich jemand mehr Mühe mit der Antwort gibt als Du Dir mit der Frage.
. . . . . Feedback wäre wünschenswert
Ich werde keinen privaten 1:1 Support leisten, außer ich biete ihn ausdrücklich an.
Ansosnten gilt: Hilfe ausserhalb dieses Thread (PN, WhatsApp, Skype, Mail, ICQ, etc...) nur per Barzahlung oder Vorauskasse!
Wenn man sich selbst als "Noob" bezeichnet, sollte man die Finger davon lassen.
Wenn man gewillt ist daran etwas zu ändern, lernt man Grundlagen!
|
12.04.2013, 15:01:38
|
Anfänger
|
|
Registriert seit: Apr 2013
Alter: 34
Beiträge: 10
|
|
AW: Diashow mit variablen Bildern in den Ordnern
Danke Schön schonmal für die hilfreichen Tipps :)
Aber langsam beschleicht mich das gefühl, dass dies nicht wirklich funktioniert.
Hier ein ganz einfacher Code, der aufzeigt was ich erreichen will, unzwar dass die JS-Variable
übernommen werden kann damit es im div-Tag verwendet werden kann.
PHP-Code:
<?php echo ' <script type=\'text/javascript\'> var picwid=\'200\'; var pichei=\'300\'; var my=\'div style="width:"+picwid\'; document.write(my);';
echo 'picwid';
echo '</script> '?>
Leider funktioniert das nicht da, das picwid, nicht als Variable erkennt, entweder läuft
da wirklich etwas beim escapen schief oder sonst irgendwas, weil ich sitz schon seit dem Mittag beim
escapen dran und hab noch keine annähernde lösung im petto.
Viele Grüße
Rewa
|
12.04.2013, 22:53:58
|
|
Administrator
|
|
Registriert seit: Jul 2004
Beiträge: 3.707
|
|
AW: Diashow mit variablen Bildern in den Ordnern
Zitat:
Zitat von Rewa
[..]
PHP-Code:
<?php
echo '
<script type=\'text/javascript\'>
var picwid=\'200\';
var pichei=\'300\';
var my=\'div style="width:"+picwid\';
document.write(my);';
echo 'picwid';
echo '</script> '?>
|
Mehrere Fehler, besser/richtig:
PHP-Code:
<?php
echo "
<script type='text/javascript'>
var picwid='200';
var pichei='300';
var my='div style=\"width:' + picwid + '\"';
document.write(my);";
echo "alert(picwid);";
echo "</script>";
?>
__________________
Gruss vt1816
Erwarte nicht, dass sich jemand mehr Mühe mit der Antwort gibt als Du Dir mit der Frage.
. . . . . Feedback wäre wünschenswert
Ich werde keinen privaten 1:1 Support leisten, außer ich biete ihn ausdrücklich an.
Ansosnten gilt: Hilfe ausserhalb dieses Thread (PN, WhatsApp, Skype, Mail, ICQ, etc...) nur per Barzahlung oder Vorauskasse!
Wenn man sich selbst als "Noob" bezeichnet, sollte man die Finger davon lassen.
Wenn man gewillt ist daran etwas zu ändern, lernt man Grundlagen!
|
14.04.2013, 16:40:29
|
|
Senior Member
|
|
Registriert seit: Feb 2006
Ort: Wallrabenstein
Alter: 56
Beiträge: 1.044
|
|
AW: Diashow mit variablen Bildern in den Ordnern
Alternativ und meiner Meinung nach "schöner" würde ich dies so umsetzen:
PHP-Code:
<?php $picwid = 200; $pichie = 300; echo 'PHP-Wert einer Variablen<br />'; ?> <script type='text/javascript'> var picwid='<?php echo $picwid; ?>'; var pichei='<?php echo $pichei; ?>'; var my='<div style="width:'+picwid+';border:solid 1px black">test</div>'; document.write(my); alert('<?php echo $pichei; ?>'); </script>
|
15.04.2013, 13:28:21
|
Anfänger
|
|
Registriert seit: Apr 2013
Alter: 34
Beiträge: 10
|
|
AW: Diashow mit variablen Bildern in den Ordnern
Danke euch für eure Hilfe, es hat genauso funktioniert :) :) und
es funktioniert alles einwandfrei und ohne probleme zumindest auf dem IE xD
Alle anderen Browser wollen irgendwie die dynamischen HTML-Tags nicht :P
aber das gehört glaub wo anders hin und nicht hier her :) :)
Danke nochmal :)
|
15.04.2013, 13:32:23
|
|
Administrator
|
|
Registriert seit: Jul 2004
Beiträge: 3.707
|
|
AW: Diashow mit variablen Bildern in den Ordnern
Zitat:
Zitat von Rewa
[..]
Alle anderen Browser wollen irgendwie die dynamischen HTML-Tags nicht :P
aber das gehört glaub wo anders hin und nicht hier her :) :)
|
Was sind dynamische HTML-Tags?
IE versucht jeden Schei.. darzustellen im Gegensatz zu allen anderen Browsern - die möchten schon fehlerfreien Code.
Hast Du mal versucht Deine Seiten zu validieren?
__________________
Gruss vt1816
Erwarte nicht, dass sich jemand mehr Mühe mit der Antwort gibt als Du Dir mit der Frage.
. . . . . Feedback wäre wünschenswert
Ich werde keinen privaten 1:1 Support leisten, außer ich biete ihn ausdrücklich an.
Ansosnten gilt: Hilfe ausserhalb dieses Thread (PN, WhatsApp, Skype, Mail, ICQ, etc...) nur per Barzahlung oder Vorauskasse!
Wenn man sich selbst als "Noob" bezeichnet, sollte man die Finger davon lassen.
Wenn man gewillt ist daran etwas zu ändern, lernt man Grundlagen!
|
15.04.2013, 15:24:25
|
Anfänger
|
|
Registriert seit: Apr 2013
Alter: 34
Beiträge: 10
|
|
AW: Diashow mit variablen Bildern in den Ordnern
Ja, hab ich, ich hab leider kein fehler oder Problem entdecken können. Ich bekomm auch keinen Fehler bei FireBug angezeigt. Ich demonstrier mal mein Problem anhand eines kleinen Codes.
Code in index.php:
Code:
function Textauswahl(StdAktuell,Wochentag) {
// werktags von 11:00 - 12:59 Uhr
if (StdAktuell >=11 && StdAktuell <= 12){
<?php include('Seite2.php'); ?>}
// Rest
else {
<?php include('Seite1.php');?>}
return ' ';
<head>
<body>
<div id="slideshow"> </div>
</body>
</html>
}
Code seite1.php:
Code:
var divid="slideshow";
this.b_insert= function(){
var b, thestylid, thez, thevis, slidehei;
var myhtml='<div style=\"width:' + picwid + 'px;height:'+slidehei+'px\">';
myhtml+='<div style=\"position:absolute;width:'+picwid+'px;height:'+pichei+'px;\">';
for(b=1;b<=emax;b++){
thez=1;thevis='hidden';
if(b<=1) {thez=2; thevis='visible';}
myhtml+='<div id=\"img_'+slideid+'_'+b+'\" style=\"font-size:0;height:'+pichei+'px;width:'+picwid+'margin:0;padding:0;text-align:center;visibility:'+thevis+';z-index:'+thez+';position:absolute;left:0;top:0;width:'+picwid+'px;height:'+pichei+'px;background-color:'+backgr+'\">';
myhtml+='<img src=\"'+imges[(b-1)]+'\" style=\"vertical-align:middle;border:0;height:600px;width:1000px\" alt=\" \"></div>';
}
myhtml+='</div>';
document.getElementById(divid).innerHTML=myhtml;
Ich weiß nicht wieso der Mozilla bzw. andere Browser das Element in der Elementid nicht erkennen.
Eine frühere Lösung von mir Ohne die Einbindung von Ordnerstrukturen und PHP, hatte auch erst in Firefox funktioniert, nach dem ich dass eingefügt hatte:
Code:
<iframe src="dia.html"> </iframe>
code dia.html
Code:
<head>
<script type="text/javascript" src="jsdia.js"> //gleicher js-code wie in seite1.php
</head> <body> <div id="slideshow"> </div>
Wie erwähnt ich musst es in der vorherigen Version ohne PHP, auch ein wenig ums eck denken
um es in Firefox erkennbar zu machen.
|
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
|
|
Themen-Optionen |
|
Ansicht |
Linear-Darstellung
|
Forumregeln
|
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.
HTML-Code ist aus.
|
|
|
Alle Zeitangaben in WEZ +2. Es ist jetzt 02:46:25 Uhr.
|