ID's automatisch neusortieren
lima-city → Forum → Programmiersprachen → PHP, MySQL & .htaccess
auto
beispiel
button
datensatz
einfache mglichkeit
formular
fragen
groen aufwand
id
identifikationsnummer
kurzform
limit
luecke
order
result
richtig hast
schreibe
spalten
tabelle
vokabel
-
Habe ein id Problem und ned genug wissen dies zulösen.
Beispiel datensatz 1 hat id 1 automatisch durch auto increment in der DB zugewisen bekommen u.s.w
DB satz 1 hat id 1
DB satz 2 hat id 2
DB satz 3 hat id 3
DB satz 4 hat id 4
Wenn ich jetzt datensatz nr. 3 lösche per php hab ich in der db eine lücke.
füge ich einen neuen Datenzatz ein habe ich den mit id 5, 3 wird also immer
leersein das dieser einmal gelöscht wurde.
Meine frage dazu, gibt es eine einfache möglichkeit per button z.B Formular
das ich einbauen könnte was ohne grossen aufwand die ids in der datenbank
neu sortiert und setzt ??? Oder muss ich mir da komplett was anderes ausdenken? -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
Die eigentlich Frage ist doch, warum du es neu sortieren willst?! Es gibt dafür keinen wirklichen Grund...
-
Die ID ist eine Identifikationsnummer. Jeder Datensatz hat >eine< bestimmte ID über die er angesprochen werden kann.
Wenn ein Datensatz gelöscht wird, dann bleibt die ID in gewisser Weise trotzdem bestehen. -
Ok ganz einfach ich habe für meine kleinere sis ein skript gebastelt zum abfragen von Vokabeln zum lernen deutsch - englisch übersetzung und abfrage ob richtig, wenn richtig soll vokabel mit id 2 abgefragt werden u.s.w bei id 1 wird angefangen. Jetzt kannste dir in etwa ein bild machen oder vielleicht eine bessere idee wie man festlegen kann das die erste vokabel abgefragt wird wenn richtig zur zweiten u.s.w ?
-
Ganz einfach, du liest die Daten in ein numerisches Array und kannst so die entsprechenden Vokabeln "ansprechen".
-
wäre es möglich mir ein beispiel zu geben?
-
<?php //Daten Auslesen $sql = "SELECT * FROM vokabeln"; $result = mysql_query($sql); //Array initialisieren $vocab = array(); //Vokabeln in ein numerisches Array einlesen while($row = mysql_fetch_object($result)){ $vocab[] = $row->voc; } ?>
Ich hoffe du verstehst wie ich das meine.
Beitrag geändert: 13.11.2006 17:08:20 von i-spacke -
@spacke :
Er will sicherlich nur eine Vokabel pro Seite auslesen.
Das Script würde aber alle auslesen, was zu viel wäre.
Kurzform :
$id = (isset ($_GET['id'])) ? (int) $_GET['id'] : 1;
$result = mysql_fetch_array (mysql_query (sprintf ('SELECLT * FROM `tabelle` ORDER BY `id` LIMIT %s, 1', $id)));
Ich schreibe mal lieber noch die Langeform hin.
$id = (isset ($_GET['id'])) ? (int) $_GET['id'] : 1;
$sql = sprintf ('SELECLT * FROM `tabelle` ORDER BY `id` LIMIT %s, 1', $id);
$result = mysql_query ($sql);
$array = mysql_fetch_array ($result);
MfG Lucas -
Ich habe dies anderst verstanden...
Willst du nicht, wenn du die Vokabel mit der id 1 richtig hast, dass es dir einfach die Vokabel 2 anzeigt???
Mach in die Tabelle eine Spalte namens richtig oder so...
Dann wenn dus richtig hast, soll dir php eine 1 hineinschreiben...
Und in ner Session schreibst du die aktuelle id welche bei jedem seitenaufruf einfach um 1 erhöht wird...
l sebi -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage