webForumDet fria alternativet

Uppdatera en databas i mysql

4 svar · 534 visningar · startad av Shaadow

ShaadowMedlem sedan apr. 200632 inlägg
#1

Hejsan!

Har gjort ett nyhetsskript på min sida och håller för närvarande på att försöka fixa så man kan redigera inläggen från sidan, men jag har stött på lite problem.
Har aldrig förr använt kommandot UPDATE i MySQL och jag har slut på idéer för hur jag ska få det till att fungera, hoppas ni kan hjälpa mig :)

managenews.php

<?php
	//Överst på ALLA sidor du vill skydda med sessioner
	session_start();    //Startar session
	function matain() {
			$datum = date("Y-m-d H:i:s");
			$länk = mysql_connect("localhost","root","");
			$databas = mysql_select_db("webbdesign");
			$namn = $_POST['namn'];
			$rubrik = $_POST['rubrik'];
			$inlagg = $_POST['inlagg'];
			$sql ="INSERT INTO nyheter(namn,rubrik,inlagg,datum) VALUES('$namn','$rubrik','$inlagg','$datum')";
			mysql_query("$sql");
			mysql_close($länk);
			echo '<meta http-equiv="Refresh" content="0;url=managenews.php">';
			}
	function edit() {
			$datum = date("Y-m-d H:i:s");
			$rubrik = $_POST['rubrik'];
			$inlagg = $_POST['inlagg'];
			$namn = $_POST['namn'];
			$sql = "UPDATE `nyheter` SET `inlagg` = '{$_POST['inlagg']}' WHERE id = '{$_POST['edit']}'";
			mysql_query("$sql");
			} 
?>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Heroes FanSite</title>
<link href="style.css" rel="stylesheet" type="text/css" />
</head>

<body onLoad="show_clock()">
<div id="container">		

		<div id="header">

			<div id="veckodag">

				<?php
					include 'datum.php';
				?>
			</div>
		</div>

	<div id="menu">

		<?php
			if(isset($_SESSION['sInne']) == 'tjosan') {
		?>
			<script type='text/javascript'>function Go(){return}</script>
			<script type='text/javascript' src='menu-single_var_admin.js'></script>
			<script type='text/javascript' src='menu131.js'></script>
		<?php
			} else {
		?>
			<script type='text/javascript'>function Go(){return}</script>
			<script type='text/javascript' src='menu-single_var.js'></script>
			<script type='text/javascript' src='menu131.js'></script>
		<?php
			}
		?>
	</div>

	<div id="mainleft">
		<div id="leftrubrik">Senaste nyheter</div>
		<div id="smallborder"></div>
		<p id="skribent"><a href="managenews.php">Lägg till nyhet</a></p>
	<?php
		$länk = mysql_connect("localhost","root","");
		$sql ="SELECT * FROM nyheter ORDER BY datum DESC ";
		$result = mysql_db_query("webbdesign","$sql");
		while($rad=mysql_fetch_array($result)) {
	?>
	<div id="leftstycke"><?=$rad["rubrik"]?></div>
	<div id="skribent"><a href="managenews.php?visa=<?=$rad['id']?>">Visa</a>&nbsp;&nbsp;&nbsp;&nbsp; <a href="managenews.php?edit=<?=$rad['id']?>">Redigera</a> 
	&nbsp;&nbsp;&nbsp;&nbsp; <a href="managenews.php?tabort=<?=$rad['id']?>">Radera</a>
	</div>
	<br />

	<?php 
		}
		//Tar bort avsnittet ur databasen
		if (isset($_GET['tabort'])){
		$sql="DELETE FROM nyheter WHERE id={$_GET['tabort']}";
		$result = mysql_query($sql);
		echo '<meta http-equiv="Refresh" content="0;url=managenews.php">';
		}
	?>
	</div>

	<div id="main">
		<p id="rubrik">Administrera nyheter</p>
		<?php
			if(isset($_POST['nytt'])) {
			matain();
			} else {
			if(isset($_POST['edit'])) {
			edit();
			}
			}
		?>
		<?php
			// Skriver ut nyheten om man klickar på visa
			if(isset($_GET['visa'])){
			$sql="SELECT * FROM nyheter WHERE id={$_GET['visa']}";
			$result = mysql_query($sql);
			while($rad=mysql_fetch_array($result)) {
		?>
			<p id="rubrik"><?=$rad['rubrik']?></p>
			<p id="stycke"><?=$rad['inlagg']?></p>
			<div align="center" id="skribent">Skrivit av: <b><?=$rad['namn']?></b>, <i id="datum"><?=$rad['datum']?></i></div>
			<div id="border" /></div>
			<br />
			<div align="center" id="stycke"><a href="managenews.php?tabort=<?=$rad['id']?>"><b>Radera nyhet</b></a></div>
			<p align="center" id="stycke"><a href="managenews.php">Tillbaka</a></p>

		<?php
			}
			// Hämtar datan från databasen och sätter in i textrutorna
			} else {
			$länk = mysql_connect("localhost","root","");
			if(isset($_GET['edit'])) {
			$sql="SELECT * FROM nyheter WHERE id={$_GET['edit']}";
			$result = mysql_query($sql);
			while($rad=mysql_fetch_array($result)) {
		?>
			<form id="stycke" method="post" action="<?=$PHP_SELF?>" name="edit" onSubmit="returnskicka_OnClick();">
			<input type="hidden" name="edit" value="<?=$_GET['edit']?>" />
			<b>Rubrik:</b><br /><input type="text" name="rubrik" value="<?=$rad['rubrik']?>" /><br />
			<b>Nyhet:</b><br /><textarea name="inlagg" cols="70" rows="15" /><?=$rad['inlagg']?></textarea>
			<br /><b>Skribent:</b><br /><input type="text" name="namn" value="<?=$rad['namn']?>" /><br />
			<br /><input id="submit" type="submit" name="edit" value="Skicka" /> <input id="submit" type="reset" value="Rensa" />
			</form>
		<?php
			}
			} else {
		?>
			<form id="stycke" method="post" action="<?=$PHP_SELF?>" name="matain" onSubmit="returnskicka_OnClick();">
			<b>Rubrik:</b><br /><input type="text" name="rubrik" /><br />
			<b>Nyhet:</b><br /><textarea name="inlagg" cols="70" rows="15" /></textarea>
			<br /><b>Skribent:</b><br /><input type="text" name="namn" /><br />
			<br /><input id="submit" type="submit" name="nytt" value="Skicka" /> <input id="submit" type="reset" value="Rensa" />
			</form>
		<?php
			}
			}
		?>
		</p>
	</div>
</div>
</body>
</html>
UrMeMedlem sedan apr. 2001762 inlägg
#2

Testa detta:

$sql = "UPDATE nyheter SET inlagg = '".$_POST['inlagg']."' WHERE id = ".$_POST['edit']."";

Akta dig för SQL-injections bara.

ShaadowMedlem sedan apr. 200632 inlägg
#3

UrMe skrev:

Testa detta:

$sql = "UPDATE nyheter SET inlagg = '".$_POST['inlagg']."' WHERE id = ".$_POST['edit']."";

Akta dig för SQL-injections bara.

Ledsen men detta fungerade tyvärr inte :(

SQL-injections betyder vadå?

yadorMedlem sedan mars 2004455 inlägg
ShaadowMedlem sedan apr. 200632 inlägg
#5

Ingen annan som har några förslag på hur jag ska lösa detta?

Har löst problemet!

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