[Erledigt, Danke] News Beiträge im Admin Bereich löschen!?

Fragen zu allen Themen rund ums Programmieren außerhalb von phpBB können hier gestellt werden - auch zu anderen Programmiersprachen oder Software wie Webservern und Editoren.
Antworten
Benutzeravatar
Stella-Max
Mitglied
Beiträge: 13
Registriert: 20.09.2006 23:46
Wohnort: Sachsen
Kontaktdaten:

[Erledigt, Danke] News Beiträge im Admin Bereich löschen!?

Beitrag von Stella-Max »

Hallo,

also vorne weg ich bin keine Programmiermaschine ;) ich fange gerade erst an damit ;) also nun auch schon das erste Problem.

Ich habe nach einer Möglichkeit gesucht die Newsbeiträge zu löschen, und auch gefunden aber es will einfach nichts löschen?

Hier der Code:

Code: Alles auswählen

<?php 
/***************************************************************************
 *                              admin_news_show.php
 *                            -------------------
 *   begin                : Thursday, Apr 3, 2006
 *   copyright            : (C) 2006 by Stella-Max
 *   email                : xxxxxxxxxxxxxxx
 *   home  		     : xxxxxxxxxxxxxxxxxxx
 *
 *
 *
 ***************************************************************************/



if($setmodules == 1)
{
	$file = basename(__FILE__);
	$module['News  Center']['löschen_news'] = "$file?mode=config";
	return;
}
define('IN_PHPBB', 1);
//
// Let's set the root dir for phpBB
//
$phpbb_root_path = "./../";
require($phpbb_root_path . 'extension.inc');
require('./pagestart.' . $phpEx);
//include($phpbb_root_path . 'includes/functions_selects.'.$phpEx);
//require($phpbb_root_path . 'language/lang_' . $board_config['default_lang'] . '/lang_main.'.$phpEx); 

// ===========================================================================================
// Loesch mich :)

if($submit) {
// Wenn der Submit-Button geklickt wurde ...

// die Anzahl der markierten Datensaetze ermitteln
$y=count($loeschen);
echo "$y Datensaetze werden geloescht.<br><br>";

    // F&uuml;r jeden markierten Datensatz
    // den delete-Befehl aufrufen.
    for($x=0;$x<$y;$x++) {
    mysql_query("delete from phpbb_news where
                     ID='$loeschen[$x]'");
    echo "Geloescht: $loeschen[$x]<br>";
    }
}

// Die vorhandenen Datensätze abrufen
$result=mysql_query("select * from phpbb_news");

// Nur wenn Daten gefunden wurden,
// wird das Formular angezeigt.
if(mysql_num_rows($result)) {
?>
<form method="post" target="main" action="<?php echo append_sid("admin_news_show.$phpEx") ?>">
  <table width="300" border="0" cellspacing="0" cellpadding="0">
  <?
  // Daten anzeigen
  while($row=mysql_fetch_array($result,MYSQL_ASSOC)) {
  $id=$row["id"];
  $beitrag=$row["beitrag"];
  $feld=$row["feld"];
  ?>
    <tr>
      <td width="30">
        <input type="checkbox" name="loeschen[]" value="<? echo $id ?>">
      </td>
      <td><? echo $beitrag ?></td><tr><td><? echo $feld ?></td></tr>
  </tr>
  <? } ?>
</table>
  <br>
  <input type="submit" name="submit" value="Löschen">
</form>
<?
} else {
echo "Keine Daten gefunden.";
}
?>
Ich kann die News anklicken und auf den Button (löschen) klicken aber nichts passiert ?

Ich weis nicht mehr weiter und eh ich sinnlos weiter Teste ;)

Die Webseite um die es geht! www.stella-max.dyndns.org/Versuche im Index erscheint das NewsCenter ! Es wird komplett vom Adminbereich aus gesteuert. Halt nur das löschen nicht ;)

MfG Frank
:o :lol:
Zuletzt geändert von Stella-Max am 17.10.2006 22:34, insgesamt 1-mal geändert.
Benutzeravatar
Miriam
Mitglied
Beiträge: 12310
Registriert: 13.10.2004 07:18
Kontaktdaten:

Beitrag von Miriam »

$loeschen ist nicht per default ein Array und schon garkeins mit Daten drin....

Ergo: Vor dem Aufruf von $loeschen, dieses initialisieren --->

Code: Alles auswählen

$loeschen = $_POST['loeschen'];
Gruss, Miriam.
Ich schmeiß' alles hin und...
... lasse es liegen
Benutzeravatar
Stella-Max
Mitglied
Beiträge: 13
Registriert: 20.09.2006 23:46
Wohnort: Sachsen
Kontaktdaten:

Habe es so versucht ?

Beitrag von Stella-Max »

Ich habe es so versucht, aber auch kein Erfolg ;(

Code: Alles auswählen

<?
$db=@mysql_connect("localhost","xxxxxxx","xxxxxxx");
$select=@mysql_select_db("xxxxxxx",$db);
?>
<body bgcolor="#FFFFFF" text="#000000">
<h1>Datensätze markieren und löschen </h1>
<?
if($submit) {
// Wenn der Submit-Button geklickt wurde ...

// die Anzahl der markierten Datensaetze ermitteln

$y=count($loeschen);
echo "$y Datensaetze werden geloescht.<br><br>";

    // F&uuml;r jeden markierten Datensatz
    // den delete-Befehl aufrufen.
    for($x=0;$x<$y;$x++) {
    mysql_query("delete from phpbb_news where
                     news_id='$loeschen[$x]'");   // so oder so: id=...... egal es wird nicht gelöscht?
    echo "Geloescht: $loeschen[$x]<br>";
    }
}

// Die vorhandenen Datensätze abrufen
$result=mysql_query("select * from phpbb_news");

// Nur wenn Daten gefunden wurden,
// wird das Formular angezeigt.
if(mysql_num_rows($result)) {
?>
<form method="post" target="main" action="<?php echo append_sid("admin_news_show.$phpEx") ?>">
  <table width="300" border="0" cellspacing="0" cellpadding="0">
  <?
  // Daten anzeigen
  while($row=mysql_fetch_array($result,MYSQL_ASSOC)) {
  $id=$row["id"];
  $beitrag=$row["beitrag"];
  $feld=$row["feld"];
  $loeschen = $_POST['loeschen']; 
  ?>
    <tr>
      <td width="30">
        <input type="checkbox" name="loeschen[]" value="<? echo $id ?>">
      </td>
      <td><? echo $beitrag ?></td><td><? echo $id ?></td><td><? echo $feld ?></td><td><? echo $loeschen ?></td> 
  </tr>
  <? } ?>
</table>
  <br>
  <input type="submit" name="submit" value="Löschen">
</form>
<?
} else {
echo "Keine Daten gefunden.";
}
?>
Siehe in den Tabellen ! Habe es mal aus Spass an der Freude mit rein gesetzt und was kommt, ;) array ?

Code: Alles auswählen

      <td><? echo $beitrag ?></td><td><? echo $id ?></td><td><? echo $feld ?></td><td><? echo $loeschen ?></td> // habe das hier mal eingebaut um zu sehen was passiert es wird (array) angezeit wenn ich auf löschen gehe
Es will nicht ? Die Daten bleiben ?

MfG Frank

PS: erledigt habe es jetzt anderst gemacht ;) dieser script will nicht ;) ich werde den neuen der geht hier mal Posten !
Benutzeravatar
Miriam
Mitglied
Beiträge: 12310
Registriert: 13.10.2004 07:18
Kontaktdaten:

Beitrag von Miriam »

Das Script will schon... Kann aber nicht. Der von mir vorgeschlagene Code hätte vor

Code: Alles auswählen

$y=count($loeschen);
eingebaut werden müssen. :)

Wo auch anders? Im Formular wird das Array $loeschen aufgebaut und dann abgeschickt. Also muss das Script Das (neue) Array $loeschen mit den POST-Variablen, die an die Datei übergeben wurden füllen.... Also jene, welche nach dem Abschicken mit SUBMIT in $_POST['loeschen'] gespeichert werden.
Gruss, Miriam.
Ich schmeiß' alles hin und...
... lasse es liegen
Benutzeravatar
Stella-Max
Mitglied
Beiträge: 13
Registriert: 20.09.2006 23:46
Wohnort: Sachsen
Kontaktdaten:

Hatte ich ja !

Beitrag von Stella-Max »

Hallo
hatte es oben über

Code: Alles auswählen

$y=count($loeschen); 
Eingehämmert aber nix, auch unlogisches versucht aber NIX er will einfach net, naja egal jetzt habe ich es mit einem anderen und es geht perfekt ;)

MfG Frank
Antworten

Zurück zu „Coding & Technik“