PHP Developer Forum Hier habt ihr die Möglichkeit, eure Skriptprobleme mit anderen Anwendern zu diskutieren. Seid so fair und beantwortet auch Fragen von anderen Anwendern. Dieses Forum ist sowohl für ANFÄNGER als auch für PHP-Profis! Fragen zu Laravel, YII oder anderen PHP-Frameworks. |
 |
|

01-12-2006, 20:36
|
druckgott
Junior Member
|
|
Registriert seit: Mar 2004
Beiträge: 105
|
|
Frage zu Variablenproblem
Hallo ich habe eine Frage:
Das ist mein Script:
PHP-Code:
<?php
$kom0="test";
$kom1="fdsa";
$kom2="gghhg";
echo "<table width='180' border='0'>";
foreach(glob('./voksfestfliegen20061908_loisl_sepp*.jpg') as $key => $file)
echo "
<tr>
<td><img src='$file' border='0'></td>
<td>Bild Nr. $key</td>
<td>kom".$key."</td>
</tr>";
echo "</table>";
?>
Allerdings zeigt er mir hinter den Bildern nicht die $kom0 usw. an, sondern er zeigt mir "kom0" usw. an.
An was liegt das?
Und dann hätte ich noch eine Frage. Wie kann ich das verwirklichen, dass ich immer ein Bild rechts und das nächste links und dann wieder rechts angezeigt bekomme?
bitte um hilfe bin php Neuling
Geändert von druckgott (01-12-2006 um 20:43 Uhr)
|

01-12-2006, 20:45
|
jahlives
Master  
|
|
Registriert seit: Jun 2004
Ort: Hooker in Kernel
Beiträge: 8.279
|
|
Zitat:
Allerdings zeigt er mir hinter den Bildern nicht die $kom0 usw. an, sondern er zeigt mir "kom0" usw. an.
|
Works as designed... Der Key ist die Array Position des Elementes. Also wird daraus logischerweise ein 'kom'+zahl
|

01-12-2006, 20:55
|
druckgott
Junior Member
|
|
Registriert seit: Mar 2004
Beiträge: 105
|
|
hä das heißt das geht nicht oder wie?
also ich meine wie ich das machen will!
|

01-12-2006, 21:01
|
jahlives
Master  
|
|
Registriert seit: Jun 2004
Ort: Hooker in Kernel
Beiträge: 8.279
|
|
Sag mir erstmal was genau du machen willst. Du verknüpfst den String kom einfach mit einer Zahl
Gruss
tobi
|

01-12-2006, 21:01
|
TobiaZ
 Moderator
|
|
Registriert seit: Jan 2001
Ort: MUC und MGL, Germany
Beiträge: 34.421
|
|
stichwort variable variablen oder nimm gleich arrays.
|

01-12-2006, 21:05
|
wahsaga
 Moderator
|
|
Registriert seit: Sep 2001
Beiträge: 25.236
|
|
Nutze Arrays, alles andere ist Blödsinn.
Und auch glob solltest du nicht in der Schleifenbedingung machen, sondern vorher - Ergebnis in einen weiteren Array ablegen, und über dieses eine Schleife laufen lassen.
__________________
I don't believe in rebirth. Actually, I never did in my whole lives.
|

01-12-2006, 21:11
|
druckgott
Junior Member
|
|
Registriert seit: Mar 2004
Beiträge: 105
|
|
mhh das probelm ist soviel ahnung hab ich eben nicht hab schon ewig gebraucht das überhaupt hinzubekommen das er mir die zahlen dazu auflistet.
|

01-12-2006, 21:25
|
TobiaZ
 Moderator
|
|
Registriert seit: Jan 2001
Ort: MUC und MGL, Germany
Beiträge: 34.421
|
|
na, arrays sind wohl wirklich grundlagen und sogar einfacher als variable variablen.
|

01-12-2006, 21:43
|
jahlives
Master  
|
|
Registriert seit: Jun 2004
Ort: Hooker in Kernel
Beiträge: 8.279
|
|
PHP-Code:
<?php
//befüllen wir mal einen Array
$kom[]="test";
$kom[]="fdsa";
$kom[]="gghhg";
echo "<table width='180' border='0'>";
foreach(glob('./voksfestfliegen20061908_loisl_sepp*.jpg') as $key => $file){
echo "
<tr>
<td><img src='$file' border='0'></td>
<td>Bild Nr. $key</td>
<td>".$kom[$key]."</td>
</tr>";
echo "</table>";
}
?>
So in der Art etwa.
Gruss
tobi
Geändert von jahlives (01-12-2006 um 22:14 Uhr)
|

02-12-2006, 10:38
|
druckgott
Junior Member
|
|
Registriert seit: Mar 2004
Beiträge: 105
|
|
ah super danke jetzt haut es hin
|

02-12-2006, 12:02
|
druckgott
Junior Member
|
|
Registriert seit: Mar 2004
Beiträge: 105
|
|
So jetzt hab ich noch eine Frage. Ich hab das Script jetzt ausgebaut bzw. bin dabei.
PHP-Code:
<?php
//befüllen wir mal einen Array
$kom[]="test";
$kom[]="fdsa";
$kom[]="gghhg";
foreach(glob('./voksfestfliegen20061908_loisl_sepp*.jpg') as $key => $file)
{
if ($key == $ungearde)
{
echo "<table width='100%' border='0'>";
echo "
<tr>
<td><img src='$file' border='0'></td>
<td width='100'>Bild Nr. $key</td>
<td width='50%'><div align='center'>".$kom[$key]."</div></td>
</tr>";
echo "</table>";
}
else
{
echo "<table width='100%' border='0'>";
echo "
<tr>
<td width='50%'><div align='center'>".$kom[$key]."</div></td>
<td width='100'>Bild Nr. $key</td>
<td><div align='right'><img src='$file' border='0'></div></td>
</tr>";
echo "</table>";
}
}
?>
Er soll jetzt jedes zweite Bild links setzten. Deswegen will ich, dass wenn bei der if anwendung $i == "einer ungeraden Zahl ist" er das erste macht sonst das zweite.
Leider hab ich das jetzt vergeblich versucht. Habe es mit einer while schleife versucht aber bekomme das nicht gebacken, da ich nicht weiß wie ich gleichzeitig zu jedem Bild eine zahl hochzählen kann, weil wenn ich das so machen:
PHP-Code:
foreach(glob('./voksfestfliegen20061908_loisl_sepp*.jpg') as $key => $file && $i=0;$i<=count($key);$i=$i+0.5)
haut das ja nicht hin.
Gibt es vielleicht ein zeichen, dass das nur bei ungeraden Zahlen erfüllt ist?
vielleicht kann mir jemand eine kleine Hilfe leisten
Geändert von druckgott (02-12-2006 um 12:05 Uhr)
|

02-12-2006, 12:34
|
penizillin
PHP Guru
|
|
Registriert seit: Feb 2004
Beiträge: 10.166
|
|
PHP-Code:
$i = 0;
foreach($arr as $k => $v)
{
echo $i;
if($i % 2 == 0)
echo ' ist gerade<br />';
else
echo ' ist ungerade<br />';
$i++;
}
soweit klar?
kontrollfrage: was ist "%" und was macht es in diesem fall?
|

02-12-2006, 13:31
|
druckgott
Junior Member
|
|
Registriert seit: Mar 2004
Beiträge: 105
|
|
es dividiert den wert $i durch 2 und schaut ob es 0 ist
hab es geschaft danke:
PHP-Code:
<?php
//befüllen wir mal einen Array
$kom[]="test";
$kom[]="fdsa";
$kom[]="gghhg";
$i = 0;
foreach(glob('./voksfestfliegen20061908_loisl_sepp*.jpg') as $key => $file)
{
echo $i;
if ($i % 2 == 0)
{
echo "<table width='100%' border='0'>";
echo "
<tr>
<td><img src='$file' border='0'></td>
<td width='100'>Bild Nr. $key</td>
<td width='50%'><div align='center'>".$kom[$key]."</div></td>
</tr>";
echo "</table>";
$i=$i+1;
}
else
{
echo "<table width='100%' border='0'>";
echo "
<tr>
<td width='50%'><div align='center'>".$kom[$key]."</div></td>
<td width='100'>Bild Nr. $key</td>
<td><div align='right'><img src='$file' border='0'></div></td>
</tr>";
echo "</table>";
$i=$i-1;
}
}
?>
Geändert von druckgott (02-12-2006 um 13:39 Uhr)
|

02-12-2006, 13:41
|
penizillin
PHP Guru
|
|
Registriert seit: Feb 2004
Beiträge: 10.166
|
|
nein, das ist leider falsch, schaue noch mal ins manual, dort steht genau erklärt, was der operator bewirkt.
z.b. ist 4%2 == 0, aber 4 durch 2 ist niemals null..
|

02-12-2006, 14:08
|
druckgott
Junior Member
|
|
Registriert seit: Mar 2004
Beiträge: 105
|
|
jo hab ich auch gerade gemerkt er dividiert $i durch 2 und vergleicht den rest dann ob es gleich 0 ist
also z.B. 5 %2 ist ja dann 2 rest 1 und dann vergleicht er 1 mit 0 in dem fall falsch
jetzt hätte ich noch eine frage ich kann ja eine Datenbankabfragen machen
select * from jos_ponygallery
where imgtitle = $file;
da sucht er ja jetzt in der Taballe jos_ponygallery wo der imgtitle = der Filename ist.
Jetzt würde ich gerne wissen, wie ich das machen, das er wenn das zutrifft in dieser Tabelle eine andere Catrgorie ausliest und anzeigt?
kann ich das so machen?
das müsste doch so gehen
PHP-Code:
$bild = mysql_db_query( "select * from jos_ponygallery where imgtitle = $file");
$ausgabe = mysql_result($bild, "imgtext");
echo "$ausgabe" ;
Geändert von druckgott (02-12-2006 um 14:22 Uhr)
|
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
|
|
Themen-Optionen |
|
Thema bewerten |
|
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.
|
|
|
|
PHP News
|