cybton.com
Über uns | Jobs | Werbung | Sitemap | AGB | Impressum | Hilfe ?
 Kostenlos anmelden)
Forum
Aktuellste Beiträge
Forenregeln

Community
BB-Codes
Tags
Chat
Suche (Web)
Wer ist online?
Top-User

Basar


Statistik
Mitglieder gesamt: 68138
Mitglieder online: 8
Gäste online: 10
mehr...

Anzeige
Forum » Forum: Website & Webprogrammierung » Thread: MySql-Eintrag löschen, wenn auf Link "löschen" geklickt wird

Thread: MySql-Eintrag löschen, wenn auf Link "löschen" geklickt wird


29.04.2008 13:35 Uhr

 

Status: offline
Hi,
ich möchte auf meiner Seite, dass ich über einen Link den Datensatzt, der davor steht löschen kann.

Hier noch wie ich es momentan gecodet habe(das es so nicht funktioneren kann weiß ich schon):
+ PHP:
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
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
<?php
ob_start();
include("webnutzer_connect.inc");
 
$result = mysql_query("SELECT * FROM links WHERE status = '0' ORDER BY titel");
$result2 = mysql_query("SELECT * FROM links WHERE status = '2'");
$banner = mysql_query("SELECT bannerurl FROM links WHERE status = '0' ORDER BY titel");
 
if (!$result) {
    echo 'Abfrage konnte nicht ausgeführt werden: ' . mysql_error();
    exit;
}
 
$num_rows = mysql_num_rows($result2); 
echo 'Gesperte Links: ';
echo $num_rows;
echo '<br>';
$num_rows = mysql_num_rows($result); 
echo 'Gemeldete Links: ';
echo $num_rows;
echo '<br>';
echo '<br>';
 
$sperren = mysql_query("UPDATE liwor.links SET status = '2' WHERE links.linkid = $row[0] LIMIT 1 ;");
$zueueck = mysql_query("UPDATE liwor.links SET status = '1' WHERE links.linkid = $row[0] LIMIT 1 ;");
$loeschen = mysql_query("DELETE FROM liwor.links WHERE links.linkid = $row[0] LIMIT 1 ;");
 
for ($i = 0; $i < $num_rows; $i += 1) {
  $row = mysql_fetch_row($result);
  if ($row[10] == 2) {
  
  }
  else {
    if (!$banner) {
      echo '<A HREF="http://';
      echo $row[2];
      echo '" target="';
      echo $row[3];
      echo '"><img src="http://';
      echo $row[5];
      echo '" border="0" alt="';
      echo $row[6];
      echo '" /></A> ';
      echo $row[4];
      echo ' <A HREF="" onclick="<?php $loeschen ?>" ><b> Löschen!</b></A>';
                  echo ' <A HREF="" onclick="<?php $sperren ?>" ><b> Sperren!</b></A>';
                  echo ' <A HREF="" onclick="<?php $zurueck ?>" ><b> Zutücksetzen!</b></A>';
                  if ($row[10] == 0) {
             echo '<span style="color: #ff0000;"> Achtung!</span>';
      } else {
            echo '<span style="color: #00ff00;"> OK</span>';
      }
      echo '<br>';
    } else {
      echo '<A HREF="http://';
      echo $row[2];
      echo '" target="';
      echo $row[3];
      echo '">';
      echo $row[3];
      echo '</A> ';
      echo $row[4];
      echo ' <A HREF="" onclick="<?php $loeschen ?>" ><b> Löschen!</b></A>';
                  echo ' <A HREF="" onclick="<?php $sperren ?>" ><b> Sperren!</b></A>';
                  echo ' <A HREF="" onclick="<?php $zurueck ?>" ><b> Zutücksetzen!</b></A>';
                  if ($row[10] == 0) {
             echo '<span style="color: #ff0000;"> Achtung!</span>';
      } else {
            echo '<span style="color: #00ff00;"> OK</span>';
      }
      echo '<br>';
    }
  }
}
?>
Wie kann ich es lösen, ohne dass ich eine neue Seite aufrufe.
Ich habe irgendwas von refresh gehört, allerdings habe ich keine Ahnung, wie das funktioniert.

Bitte helft mir!!!
___________________________
Live your life everyday.
http://www.linksworld24.de.vu Besucht meine HP und macht mit.
29.04.2008 13:57 Uhr

 

Status: online
Wenn du keine neue Seite aufrufen willst, sehe ich nur die Möglichkeit mit Javascript und Ajax oder du versteckst irgendwo nen 1px großen iframe.

Wobei Ajax sinnvoller wäre, weil ja die Ansicht aktualisiert werden muss.

Noch eine Möglichkeit:

Du verlinkst auf die aktuelle Seite, und übergibst per GET eine Variable die dann das Löschen aufruft
1 mal bearbeitet
___________________________
MFG Jan
"funzt nicht" ist keine gültige Fehlerbeschreibung!*haarerauf*
http://www.sysprofile.de/id30821
29.04.2008 14:03 Uhr

 

Status: offline
Übergib die ID des zu löschenden Datensatzes doch einfach als GET-Parameter im Link.
<a href="./?delete_entry=ID">L&ouml;schen</a>

Bevor du die Datensätze ausliest um sie anzuzeigen platzierst du dann die Lösch-Routine
PHP:
1
2
3
4
5
6
7
8
9
10
11
<?php
  if(isset($_GET['delete_entry']) && is_numeric($_GET['delete_entry']) && $_GET['delete_entry']>0){
     $id = (int)$_GET['delete_entry'];
     $query = "DELETE FROM ... WHERE id=$id"
     $result = @mysql_query($query);
     if($result===true)
        echo '<div class="msg_true">Datensatz gelöscht.</div>';
        else echo '<div class="msg_false">Datensatz nicht gelöscht ! (#'.mysql_errno().')</div>';
     }
     //else { /* es gibt keine extra arbeit */ }
?>
Wenn du es direkt so macht ist die Sicherheit natürlich gleich NULL, weil jeder die URL aufrufen oder gar manipulieren könnte. Aber ich gehe mal davon aus, dass eh nicht alle die Lösch-Links sehen werden  :wink: 

Was spricht dagegen die Seite neu aufzurufen ?


Gruß Dragonl

EDIT Ohmeno, zu langsam :-)

Ähm AJAX sehe ich hier nicht !
Würde wohl auch funktionieren, ABER da die Inhalte verändert werden und daher der Komplette Inhalt neu geladen wird, kann man gleich einen normalen Request machen und fertig.
2 mal bearbeitet
___________________________
Gemeinde Jugend Vertretung Bremen
"Ich will das Rad kein zweites mal erfinden,
ich will nur verstehen wie es funktioniert !"
29.04.2008 14:26 Uhr

 

bmk
Moderator
Status: offline
VORSICHT!!!
Es gibt Tools, die Links schon laden, bevor man den Link überhaupt klickt, damit der Seitenaufbau beschleunigt wird.
Soll schon passiert sein, dass jemand so ein Tool hat, loggt sich ein, das Tool lädt alle Links - und alle Artikel sind weg.

Daher: Aktionen, die Daten manupulieren, immer (in Worten: "i-m-m-e-r") als Post-Formular anlegen.
1 mal bearbeitet
___________________________
Let's code responsibly...
Webcrawler -- Portal für Dirigenten -- Musikverein Königstetten
29.04.2008 14:34 Uhr

 

Status: offline
Danke an alle.
Es funktioniert jetzt.
@bmk: Danke für die Warnung.
___________________________
Live your life everyday.
http://www.linksworld24.de.vu Besucht meine HP und macht mit.
Ähnliche Threads Forum Ähnlichkeitsgrad
 MySQL Grundwissen - Datensatz suchen -> Array Website & Webprogrammierung 2
 [MySQL] Reihenfolge der Datensätze vertauschen Website & Webprogrammierung 2
 [gelöst] Fragen bezüglich MySQL Website & Webprogrammierung 1
 Post löschen Fragen zu cybton.com 1
 FTP wo und wie? Fragen zu cybton.com 1
 Mysql zwei Tabellen verbinden Website & Webprogrammierung 1
 [Problem] MySQL mehrere Einträge gleichzeitig verändern geht nicht Website & Webprogrammierung 1
Passende eBook-Abschnitte eBook Ähnlichkeitsgrad
Hyperlinks XHTML 1
nach obennach oben

Copyright © 2008 cybton-network

Google
Partner: #Musik - Dein Internetradio - nexem. - .wir machen news - Your-Book.net - Dein kostenloses Gästebuch
ANEXIA - PHP Entwicklung - Dockers - s.Oliver Schuhe - Think Schuhe - der eigene Weg - Dorfen - Paul Green Schuhe - Bequeme Geox - Web-Entwicklung