nein. denn die 1 kommt aus $i und hat ncihts mit der DB-ID zu tun
und warum bitte willst du die db noch einmal abfragen? die while macht doch schon alles, was sie soll.
ID's in Reihenfolge
Collapse
X
-
Nuja, ich hab mir gedacht:
case 0 = vorherige id
case 1 = anzeige-id
case 2 = nächste id
und somit könnt man ja wieder ne mysql-abfrage starten, wo id=case 1 ist...
aber anscheinend funzt das alles net
Leave a comment:
-
was soll das den bewirken?
PHP Code:$sql="SELECT * FROM adressen where id='$text'";
Leave a comment:
-
Hi,
funktioniert...
Ich weiß, jetzt werde ich ein bisschen blöde, kann nix selber denken, aber trotzdem:
Ähm ja, wenn ich bei ID2 bin, sagt er zurück id1 und vorwärts id34.
das stimmt auch. aber wenn ich bei id1 oder id34 bin, sagt er das selber.
Habe den Code über die while-schleife in der detail.php eingebaut.
PHP Code:$aktuelle2 = $id+1;
$sql = "SELECT id FROM adressen LIMIT 0,3";
$res = mysql_query($sql) or die(mysql_error());
$i=0;
while ($z=mysql_fetch_assoc($res))
{
switch($i)
{
case 0 : $back = $z['id']; break;
case 1 : $text = $z['id']; break;
case 2 : $next = $z['id']; break;
}
$i++;
}
$sql="SELECT * FROM adressen where id='$text'";
if ($id==0) die("<tr><td>Das war der erste Eintrag</td></tr>");
$res=mysql_query($sql, $db);
while($adresse = mysql_fetch_object($res))
Leave a comment:
-
das x ist ja dynamisch. irgendwie brauchst du ja immer einen anderen anfangspunkt zum blättern. wenn du next drückst, muss das x ja eines nach oben genommen werden..
hier ein einfachen bespiel...PHP Code:<?php
$sql = "SELECT id,text FROM tabelle LIMIT 0,3";
$rel = mysql_query($sql) or die(mysql_error());
$i=0;
while ($z=mysql_fetch_assoc($res))
{
switch($i)
{
case 0 : $back = $z['id']; break;
case 1 : $text = $z['text']; break;
case 2 : $next = $z['id']; break;
}
$i++;
}
echo 'back : '.$back.'<br />';
echo 'text : '.$text.'<br />';
echo 'next : '.$next.'<br />';
?>
Leave a comment:
-
also:
Limit x,3
3 = max. anzeige der einträge
x = ab wo
oder versteh ich was da falsch?
und dann mit for durchlaufen lassen (3x for)
haste zufällig nen kleinen beispielcode?
(Bei der suche, 17 seiten, hab ich bis jetzt noch nix g'scheites)
Leave a comment:
-
schau mal. du willst einen eintrag anzeigen. und einen back/next button haben.
Code:back | page | next id: 3 | 6 | 8
die id 3 speicherst du zwischen für den back-button ...
die id 6 gibst du aus und ...
die id 8 legst du auf den next button.
jetzt besser verstanden?
Leave a comment:
-
hmm
blick ich jetzt zwar net so ganz, aber ich schau mal in der Suche nach auto_increment
Leave a comment:
-
das bekommt man auch anders hin. siehe mein gb.... ;-) (siehe sig)
und dann lösche mal ein paar einträge raus. und es geht immer noch mit back/next .....
du musst dir eben LIMIT x,3 machen. von ersten und dritten wert merkst du dir die id für back und next und den zweiten eintrag gibst du aus. soviel dazu...
Leave a comment:
-
Hi,
das eigentliche Problem (warum des so sein soll) ist, dass man die datensätze eins vorher und eins nachher bekommen soll...
also link zum nächsten eintrag und link zum vorherigen...
Leave a comment:
-
in der detail.php
hast du im stmt "... ORDER BY id "
in der suche.php steht's noch nicht
Leave a comment:
-
1.
quasi sql. -> *VERSCHIEB*
2.
ist es nicht sinnvoll die ids erst einmal umzuschreiben. verwende schon die id aus der tabelle um die daten gezieht anzusprechen. wenn es dir nur um die ausgabe geht, mache innerhalb der while-ausgabe $i++ und gib $i aus. vor der while natürlich $i=0 nicht vergessen.
3.
suche mal im forum nach auto_increment und co. dort findest du schon ähnliche fragen. und allen habe wir eigentlich gesagt, dass es so 'mist' (nicht abwertend, sonder hilfreich, gemeint) ist, wie der gedanke ist...
Leave a comment:
-
ID's in Reihenfolge
Hallo,
ich weiß wieder nicht, wie ich das bewältigen soll... deswegen Frage an euch:
Ich habe 3 MySQL-Einträge. den ersten mit ID1, dann ID3 und ID34
Das Problem ist, dass sie in zusammenhängender Reihenfolge angegeben werden sollen.
Also wenn ich SUCHE und das ergebnis sehe, soll der link nicht "detail.php?id=1" und "detail.php?id=3" und "detail.php?id=34" lauten, sondern:
"detail.php?id=1", "detail.php?id=2", "detail.php?id=3" und so weiter (je mehr einträge)
Suche.php
PHP Code:if ($search==1)
{
eval ("\$search1[nosearchword] = \"".gettemplate("search_nosearchword")."\";");
eval ("\$search1[noresult] = \"".gettemplate("search_noresult")."\";");
eval ("\$search1[kategorie] = \"".gettemplate("alpha_kategorie")."\";");
$sqlab = "select * from adressen where $radio1 LIKE '%$suche%'";
if($suche=="") { echo $search1[nosearchword]; }
else
{
$res = mysql_query($sqlab, $db) or die(mysql_error());
$anz_ds = mysql_num_rows($res);
if($anz_ds == 0){echo $search1[noresult];}else{
eval ("\$search1[resulttext] = \"".gettemplate("search_resulttext")."\";");
echo $search1[resulttext]; echo $search1[kategorie];
while($adresse = mysql_fetch_object ($res))
{
$rubrik[name]="<a href=detail.php?id=$adresse->id> $adresse->name</a>";
$rubrik[plz]="$adresse->plz";
$rubrik[ort]="$adresse->ort";
eval ("\$search_link_anzeige = \"".gettemplate("search_link_anzeige")."\";");
echo $search_link_anzeige;
}
}
Wobei des in der detail.php schon funktioniert (ich finds aber net, warum des da funzt )
detail.php
PHP Code:<?php
include("config.php");
eval ("\$header = \"".gettemplate("header")."\";");
echo $header;
$rubrik = array();
//
//Anzahl der Einträge bestimmen
//
$maximum="0";
$sql="SELECT * FROM adressen ORDER BY id";
$res=mysql_query($sql, $db);
while($adresse = mysql_fetch_object($res))
{
$maximum++;
}
$aktuelle1 = $id-1;
$aktuelle2 = $id+1;
$sql="SELECT * FROM adressen ORDER BY nachname LIMIT $aktuelle1,1";
if ($id==$maximum+1) die("<tr><td>Das war der letzte Eintrag</td></tr>");
if ($id==0) die("<tr><td>Das war der erste Eintrag</td></tr>");
$res=mysql_query($sql, $db);
while($adresse = mysql_fetch_object($res))
{
$rubrik[name] = $adresse->name;
$rubrik[nachname] = $adresse->nachname;
$rubrik[adresse] = $adresse->adresse;
$rubrik[telefon] = $adresse->telefon;
$rubrik[email] = $adresse->email;
$rubrik[homepage] = $adresse->homepage;
$rubrik[beruf] = $adresse->beruf;
$rubrik[speziell] = $adresse->speziell;
$rubrik[rubrik] = $adresse->rubrik;
eval ("\$adressen = \"".gettemplate("adresse")."\";");
echo $adressen;
}
eval ("\$footer = \"".gettemplate("footer")."\";");
echo $footer;
?>
BIG THXTags: None
Leave a comment: