PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Blätterfunktion!


Dönerman
19.09.2005, 13:40:02
Ich habe eine Blätterfunktion gmachtwo nur 5 Eintäge ausgegeben werden, und das alles in einer table!
Jetzt würde ich gerne einen der Eintäge bearbeiten.
Das alles klapt auch , ABER dann bin ich draufgekommen wenn ich einen Eintag ändere, dann wird immer der letzte auf der Seite geändert!

Hoff ihr habt das verstanden!


<?php


$table = "registration WHERE rank = 1 OR rank = 2"


$start = (isset($start)) ? abs((int)$start) : 0;
$limit = 5;

$resultID = mysql_query("SELECT COUNT(ID) FROM ".$table);
$total = mysql_result($resultID,0);

$start = ($start >= $total) ? $total - $limit : $start;

$query = "SELECT * FROM ".$table
." LIMIT ".$start.",".$limit;
$resultID = mysql_query($query);

$edit = "EDIT";
$lo = "DELETE";
echo "<table width='636' height'50' border='1'>
<tr>
<td width='38'><div align='center'>ID</div></td>
<td width='110'><div align='center'>First name</div></td>
<td width='142'><div align='center'>Last name</div></td>
<td width='173'><div align='center'>E-Mail</div></td>
<td width='173'><div align='center'>Rank</div></td>
<td width='61'><div align='center'>EDIT</div></td>
<td width='72'><div align='center'>DELETE</div></td>
</tr>
<tr>
<td>";
while ($data = mysql_fetch_array($resultID))
{

$row = $data['id'];
echo $data['id']."</td><td>" . $data['first'] . "</td><td>" . $data['last']. "</td><td>" . $data['mail']. "</td><td>".$data['rank']. "</td><td>".
"<a href='admin_admin_edit_admin1.php?id=$row'>" .$edit. "</a>" . "</td><td>".
"<a href='admin_admin_delete_admin1.php?id=$row'>" .$lo. "</a>" ."</td><tr></tr><td>";

}
echo "</tr> </table>";
if ($start > 0)
{
$newStart = ($start - $limit < 0) ? 0 : ($start-$limit);
echo "<a href='".$_SERVER['PHP_SELF']."?start=".$newStart
."'> zurück</a>";
}

if ($start + $limit < $total)
{
$newStart = $start + $limit;
echo " <a href='".$_SERVER['PHP_SELF']."?start=".$newStart
."'>vor </a>";
}
?>

xabbuh
19.09.2005, 14:57:12
Interessant wäre es, wenn du uns jetzt auch noch den Quelltext zeigst, mit dem du das UPDATE vornimmst.

Dönerman
19.09.2005, 15:04:21
Aber sicher doch! ^^


<?

include ("dbconnect.php");
session_start();

$first = $_POST['first'];
$last = $_POST['last'];
$mail = $_POST['mail'];
$rank = $_POST['rank'];

$abfrage = "SELECT * FROM registration WHERE id = $id";
$ergebnis = mysql_query($abfrage);
$menge = mysql_num_rows($ergebnis);
while($row = mysql_fetch_row($ergebnis)){
$id = $row[0];
$email = $row[3];
}

if ($mail != $email){
$result= mysql_query ("SELECT mail FROM registration WHERE mail = '$mail'");
$menge = mysql_num_rows($result);
if ($menge == "1") {
header("location:admin_admin_edit_f1_admin1.php");
exit;
}
}

if (($first != "") && ($last != "") && ($mail != "") && ($rank != "")){
$aendern = mysql_query("UPDATE registration Set first = '$first' WHERE id = '$id'");
$aender = mysql_query("UPDATE registration Set last = '$last' WHERE id = '$id'");
$aender = mysql_query("UPDATE registration Set mail = '$mail' WHERE id = '$id'");
$aender = mysql_query("UPDATE registration Set rank = '$rank' WHERE id = '$id'");

header("location:admin_admin_edit_edit_edit_admin1.php");
}else{
header("location:admin_admin_edit_edit_edit_edit_admin1.php");
}
?>

xabbuh
19.09.2005, 16:39:03
Erst einmal würde ich die vier Abfragen zu einer zusammenfassen:

<?php
$sql = "UPDATE
registration
SET
first = '$first',
last = '$last',
mail = '$mail',
rank = '$rank'
WHERE
id = $id";
mysql_query($sql);
?>

Dönerman
19.09.2005, 17:04:16
ok! thx! hab ich nicht gewusst!

Dönerman
19.09.2005, 17:06:34
Übrigens hast nen Rechtschreibfehler! first nicht fisrt! ^^

Aber das ist es auch nicht!

xabbuh
19.09.2005, 17:23:43
Hast du dir die Abfrage denn mal anzeigen lassen? Wird die id überhaupt richtig aus der Liste an das Formular übertragen?

Dönerman
19.09.2005, 17:29:09
ja! ich habs anfangs ohne blätterfunk. gmacht und da ist (was ich noch weiß) gegangen!

xabbuh
19.09.2005, 17:34:01
ja!
Worauf bezieht sich das jetzt? Darauf, dass die id richtig vom Listing an das Formular übergeben wird oder darauf, dass die Abfrage richtig aussieht?

Dönerman
20.09.2005, 09:23:06
auf beides! Bevor ich die Blätterfunktion gehabt habe, hat alles gepasst!

xabbuh
20.09.2005, 12:54:32
Wenn die Abfrage richtig ist, dann ist es jedenfalls kein Problem des Scriptes. Hast du vielleicht noch irgendwo eine andere Abfrage, die dir die Daten ändert?

Dönerman
20.09.2005, 13:39:30
nein! eben das ist das problem! ich machs mal ohne blätterfunktion!

Dönerman
20.09.2005, 15:37:24
ich habs! *freu* er hat die id nicht weitergegeben!

xabbuh
20.09.2005, 16:36:11
ich habs! *freu* er hat die id nicht weitergegeben!
Das hätte aber auch spätestens nach meiner Frage oben weiter auffallen können. ;-)

Dönerman
20.09.2005, 16:42:24
ja aber das war ganzschön ne arbeit, den code noch mal zu schreiben! Außerdem habe ich ja nicht ganze zeit drann gesessen! nur kurz! trotzdem THX!!!