webForumDet fria alternativet

Problem med bekräftelse på tabort funktion

5 svar · 285 visningar · startad av Tulork

TulorkMedlem sedan aug. 2004903 inlägg
#1

nu skriver jag igen..... :)

Denna gången handlar det om att när jag är inne på admin delen och ska ta bort en användare, då skriver jag in hans ID som är listat med select innan..när jag tryckt på knappen ska den byta till removefraga.php som ber om bekräftelse att man verkligen vill ta bort denna användare.."Ja" eller "Nej"

Detta är vad jag fått ihop

removefraga.php

<?php
include "conn.php";
include "remove.php";
session_start(); // Alltid överst på sidan

// Kolla om inloggad = sessionen satt
if (!isset($_SESSION['sess_user'])){
  header("Location: index.php");
  exit;
}
?>

<?php
ob_start();
if (isset ($_POST ['JA'])){
		
	$sql = mysql_query("DELETE  FROM members WHERE id = '$delete'");
	 header("Location:remove.php"); 
}
if (isset ($_POST ['NEJ'])){
		
	header("Location:remove.php"); 
} 
ob_end_flush();
?>

<p>Är du säker på att du vill ta bort kontot?<p>
<form name="FRAAG" method="POST" action="<?php echo $_SERVER['PHP_SELF']; ?>">
<input type="submit" name="JA" value="JA">
<input type="submit" name="NEJ" value="NEJ">
</form>

remove.php

<?php
session_start(); // Alltid överst på sidan
ob_start();
// Kolla om inloggad = sessionen satt
if (!isset($_SESSION['sess_user'])){
  header("Location: index.php");
  exit;
}
?>

<?php

include "conn.php";

// Performing SQL query
$query = 'SELECT * FROM members';
$result = mysql_query($query) or die('Query failed: ' . mysql_error());

// Printing results in HTML
echo "<table>\n";
echo "<p>ID User Pass Name<p>";
while ($line = mysql_fetch_array($result, MYSQL_ASSOC)) {
   echo "\t<tr>\n";
   foreach ($line as $col_value) {
       echo "\t\t<td>$col_value</td>\n";
   }
   echo "\t</tr>\n";
}
echo "</table>\n";

// Free resultset
mysql_free_result($result);

if (isset ($_POST ['submit'])){
$delete = $_POST['delete'];
if ($delete=="6"){
	echo "<p>Du kan inte ta bort Admin kontot!<p>";
}
if ($delete!=="6"){
	//$sql = mysql_query("DELETE  FROM members WHERE id = '$delete'");
	//$VARVAR=$delete;
	 header("Location:removefraga.php"); 
           
	exit;
	
}
	
}
ob_end_flush();
?>

<br><form method="post" action="<?php echo $_SERVER['PHP_SELF']; ?>">
<label for="delete"> Vilket id vill du ta bort</label>
<input type="text" name="idelete" />

<input type="submit" name="submit" value="skicka"/>

</form>

Just nu får vi lite header fel..men även utan dem felen så tar den inte bort något.. efter detta fungerar ska vi även få till det så att bekräftelsen kommer upp i en liten popup ruta som sedan stängs när vi valt ja eller nej.

TulorkMedlem sedan aug. 2004903 inlägg
#2

ni kan ju kolla på TEST SIDAN

Admin
dgt54r

logga in o kolla lite...det e lite jobbigt för det finns inte länkningar tillbaka osv..men den e sessionsbaserad så skriv bara in i adressfältet vart ni vill

CompusaMedlem sedan jan. 20023 327 inlägg
#3

Hur ser dessa rader ut:

Fatal error: Cannot redeclare db_escape() (previously declared in /usr/local/www/apache22/data/Grej/conn.php:14) in /usr/local/www/apache22/data/Grej/conn.php on line 28

Visa gärna filen, men detta kanske är ett helt annat fel än det du syftade på?

TulorkMedlem sedan aug. 2004903 inlägg
#4

det är ändrat nu,

på remove.php ser det ut

<?php
session_start(); // Alltid överst på sidan

// Kolla om inloggad = sessionen satt
if (!isset($_SESSION['sess_user'])){
  header("Location: index.php");
  exit;
}
?>

<?php
ob_start();
include "conn.php";

// Performing SQL query
$query = 'SELECT * FROM members';
$result = mysql_query($query) or die('Query failed: ' . mysql_error());

// Printing results in HTML
echo "<table>\n";
echo "<p>ID User Pass Name<p>";
while ($line = mysql_fetch_array($result, MYSQL_ASSOC)) {
   echo "\t<tr>\n";
   foreach ($line as $col_value) {
       echo "\t\t<td>$col_value</td>\n";
   }
   echo "\t</tr>\n";
}
echo "</table>\n";

// Free resultset
mysql_free_result($result);

if (isset ($_POST ['submit'])){
$delete = $_POST['delete'];
if ($delete=="6"){
	echo "<p>Du kan inte ta bort Admin kontot!<p>";
}
if ($delete!=="6"){
	//$sql = mysql_query("DELETE  FROM members WHERE id = '$delete'");
	//$VARVAR=$delete;
	 header("Location:removefraga.php"); 
           
	exit;
	
}
	
}
ob_end_flush();
?>

<br><form method="post" action="<?php echo $_SERVER['PHP_SELF']; ?>">
<label for="delete"> Vilket id vill du ta bort</label>
<input type="text" name="idelete" />

<input type="submit" name="submit" value="skicka"/>

</form>

men får headerfel på rad 43, detta är rad 43 header("Location:removefraga.php");

TulorkMedlem sedan aug. 2004903 inlägg
#5

så här ser conn.php ut

<?php

// Byt ut mot dina inloggningsuppgifter och databas
$mysql_server = "localhost";
$mysql_user = "root";
$mysql_password = "xxxxx";
$mysql_database = "xxxx";
$mysql_tablen = "xxxx";
$conn = mysql_connect($mysql_server, $mysql_user, $mysql_password);
mysql_select_db($mysql_database, $conn);

// En funktion att användas när magic_quotes_gpc inte är satt. För att förhindra SQL-injections, eller i lidrigare fall MySQl-fel.
function db_escape ($post)
{
   if (is_string($post)) {
     if (get_magic_quotes_gpc()) {
        $post = stripslashes($post);
     }
     return mysql_real_escape_string($post);
   }
   
   foreach ($post as $key => $val) {
      $post[$key] = db_escape($val);
   }
   
   return $post;
}

/*
   Se till att det inte finns några dolda tecken, typ radbyte
   eller mellanslag, efter den avslutande PHP-taggen !!!
*/
?>
TulorkMedlem sedan aug. 2004903 inlägg
#6

alltså, vill bara påpeka det att bort tagning och automatisk updatering utav sidan fungerar perfekt, men det vi ville ha nu är ett popup fönster med bekräftelse om att man verkligen vill ta bort denna användare...när vi byter fönster så följer antagligen inte $delete variablens innehåll med..dvs delete from members where id = $delete och så innehåller inte delete nått...

133 ms totalt · 3 externa anrop · v20260731065814-full.7de19299
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
130 ms — hämta tråd, inlägg och bilagor (db)