Demo

Probiere ClanSphere aus und teste daran herum. Demo


Antworten: 10
Seite [1]
racor


Going for pro




Beiträge: 476
# Thema - 11.01.2009 um 21:13 Uhr
Hallo Leute,

nach langer Abstinenz melde ich mich bei euch direkt mit einem Problem .
Ich arbeite gerade an einem Schulprojekt und habe ne konkrete Vorstellung davon, kriege es jedoch einfach nicht auf die Reihe.

Mein Problem:

1. Ich lese aus der DB aus einer Bestimmten Tabelle Zeile mit einer Bedingung aus (where)
2. Ich lasse die die Werte in eine Array einspeisen.

Nun habe ich die Möglichkeit mit einer while-Schleife Datensatz für Datensatz die einzelnen Spalten aufzurufen, z.B. $zeile["name"], $zeile["vorname"],..., das ist alles soweit klar.

Ich möchte allerdings nicht alle Zeile anzeigen, sondern seperat die ersten beiden Zeile ausgeben können und den Rest der Zeilen ebenfalls seperat (2 einzelne Tabellen).


Ich würde mich freuen, wenn mir jemand helfen könnte

lg
racor


------------------

ONLINE PORTFOLIO
Inaktiv
Fr33z3m4n ClanSphere Team


Medal of Honor




Herkunft: Hamm
Beiträge: 11094
# Antwort: 1 - 11.01.2009 um 21:27 Uhr
was heißt seperat ?
Wie erstellst du das template ?
anstatt einer while schleife, machste eine for mit max 2 für den ersten durchlaufen, und für den 2ten mit count($result) - 2 und start bei 2

 
1.
2.
3.
4.
5.
6.
7.
1. / 2. / ... 
 for($i=0$i<2; $++) {
echo 
$zeile[$i]["name"]; <-- oder wie auch immerob echo oder $data
}

for(
$i=2$i<(count($zeile)-2); $i++) {
echo 
$zeile[$i]["name"]; <-- oder wie auch immerob echo oder $data
}


------------------
mfg
Patrick "Fr33z3m4n" Jaskulski

Antoine de Saint-Exupéry: Wenn Du ein Schiff bauen willst, so trommle nicht Männer zusammen, um Holz zu beschaffen, Aufgaben zu verteilen, sondern lehre die Männer die Sehnsucht nach dem endlosen weiten Meer.

Inaktiv
|
racor
Thread-Ersteller


Going for pro




Beiträge: 476
# Antwort: 2 - 11.01.2009 um 21:47 Uhr
Ich hatte genau die selbe Idee wie du jedoch will er mir das 2dimesionale Array leider nicht so ausgeben, wie es sein sollte:

Der Code:

$zeile1 = mysql_fetch_array($query2);
echo $zeile1[1]["name"];

Ausgabe:

L

L ist dabei komischer weise der 1. Buchstabe des Spalte "name" in der 1. Zeile die ausgelesen wird.


------------------

ONLINE PORTFOLIO

Inaktiv
|
Fr33z3m4n ClanSphere Team


Medal of Honor




Herkunft: Hamm
Beiträge: 11094
# Antwort: 3 - 12.01.2009 um 08:13 Uhr
echo $zeile1[1]['name'];
single quotest.

Ansonsten lass dir mal das Array ausgeben
print_R($zeile1);

vlt. wird es dort schon zerbrochen zusammengesetzt.


------------------
mfg
Patrick "Fr33z3m4n" Jaskulski

Antoine de Saint-Exupéry: Wenn Du ein Schiff bauen willst, so trommle nicht Männer zusammen, um Holz zu beschaffen, Aufgaben zu verteilen, sondern lehre die Männer die Sehnsucht nach dem endlosen weiten Meer.

Inaktiv
|
saNsalvador


Try to beat me





Beiträge: 123
# Antwort: 4 - 12.01.2009 um 09:48 Uhr
Vllt. kannst du ja mal den Code komplett posten


Inaktiv
|
duRiel ClanSphere Team


Weltmeister




Herkunft: Cambridge
Beiträge: 7300
# Antwort: 5 - 12.01.2009 um 16:44 Uhr
12.01.2009 um 09:48 Uhr - saNsalvador:
Vllt. kannst du ja mal den Code komplett posten


+1


Inaktiv
|
racor
Thread-Ersteller


Going for pro




Beiträge: 476
# Antwort: 6 - 13.01.2009 um 10:23 Uhr
 
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
1. / 2. / ... 
<?php
include("config.php");
$connection mysql_connect($server$user$password)
    or die (
"Verbindung zur Datenbank konnte nicht hergestellt werden!");
mysql_select_db($db$connection);
$sql1 "SELECT * FROM $table where kategorie = 'Bekleidung'";
$sql2 "SELECT * FROM $table where kategorie = 'Sticker'";
$sql3 "SELECT * FROM $table where kategorie = 'CDs und DVDs'";
$sql4 "SELECT * FROM $table where kategorie = 'Postkarten'";
$query1 mysql_query($sql1);
if(!
$query1)
echo 
"<br>SQL-Anweisung fehlgeschlagen!";
$query2 mysql_query($sql2);
if(!
$query2)
echo 
"<br>SQL-Anweisung fehlgeschlagen!";
$query3 mysql_query($sql3);
if(!
$query3)
echo 
"<br>SQL-Anweisung fehlgeschlagen!";
$query4 mysql_query($sql4);
if(!
$query4)
echo 
"<br>SQL-Anweisung fehlgeschlagen!";
$anz1 mysql_num_rows($query1);
$anz2 mysql_num_rows($query2);
$anz3 mysql_num_rows($query3);
$anz4 mysql_num_rows($query4);

$zeile1  mysql_fetch_array($query2);
        echo 
$zeile1[1]['name'];
?>


Single quotes brachten leider keine Veränderung :(


------------------

ONLINE PORTFOLIO

Inaktiv
|
saNsalvador


Try to beat me





Beiträge: 123
# Antwort: 7 - 13.01.2009 um 10:31 Uhr
echo $zeile1[1]['name'];

Was bitte bezweckst du damit? Deine var $zeile1 ist nicht mehrdimensional.
$zeile1 hat atm entweder einen numerischen oder einen assoziativen index. Bzw es hat beides aber du kannst halt nur auf eines zur selben Zeit zugreifen also entweder $zeile1['name'] (single oder normale Quotes ist übrigens egal) oder z.B. $zeile1[0]


Inaktiv
|
racor
Thread-Ersteller


Going for pro




Beiträge: 476
# Antwort: 8 - 13.01.2009 um 10:45 Uhr
Die SQL-Abfrage liest doch mehrere Zeilen mit mehreren Spalten aus. Wie übergebe ich diese denn sonst an ein Arrays, beziehungsweise wie kann ich diese sonst mit einer Schleife ausgeben?


------------------

ONLINE PORTFOLIO

Inaktiv
|
saNsalvador


Try to beat me





Beiträge: 123
# Antwort: 9 - 13.01.2009 um 10:53 Uhr
Verstehe das Prob nicht


$i=0;
while( $zeile1 = mysql_fetch_array($query2) ){
$meinArray[$i] = $zeile1['name'];
$i++;
}


Z.b. um die Daten in ein Array zu schreiben...oder meinetwegen nur ein "echo $zeile1['name'];" wenn du diese direkt ausgeben möchtest.


Zuletzt editiert von saNsalvador am 13.01.2009 um 10:54 Uhr (1x Editiert)
Inaktiv
|
duRiel ClanSphere Team


Weltmeister




Herkunft: Cambridge
Beiträge: 7300
# Antwort: 10 - 13.01.2009 um 14:23 Uhr
mysql_fetch_array gibt nur eine (die oberste) zeile zurück.
um ein mehrdimensionales array zu bekommen brauchst du eine schleife wie sie saNsalvador gepostet hat.

gruß
duRiel


Inaktiv
|
Antworten: 10
Seite [1]


Sie müssen sich registrieren, um zu antworten.