webForumDet fria alternativet

hjälp med ett nyhetscript

Databaser & SQLur Databashanterare & SQL

2 svar · 216 visningar · startad av mr.mainline

Medlem sedan feb. 2003777 inlägg
Frågan#1

Jag skulle vilja använda mig av access istället för mysql som scriptet är uppbyggt på,var gör jag ändringarna?

config.php

<?
$db_serv = "localhost";
$db_user = "användare";
$db_pass = "pass";
$db_bas = "databas";
?>

admin_nyhet.php

<?php
include('config.php');
$db = mysql_connect($db_serv,$db_user, $db_pass) or exit(mysql_error());
mysql_select_db($db_bas);
?>
<html>
<title>Lägg till nyheter</title>
<form action="laggtill_nyhet.php" method="POST">
Titel: <input type="text" name="title"><br>
Dagens datum: <input type="text" value="<?php echo date("Y-m-d H:i"); ?>" name="date"><br>
Skrivet av: <input type="text" name="av"><br>
Nyhet:<br>
<textarea name="text" rows="15" cols="115"></textarea><br>
<br>
<input type="submit" name="submit" value="Lägg till!">
</form>

laggtill_nyhet.php

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

if (isset($_POST['submit'])) {

if(empty($_POST['titel']))
$titel = "Inte ifyllt!";
if(empty($_POST['date']))
$date = "Inte ifyllt!";
if(empty($_POST['text']))
$text = "Inte i fyllt!";
$titel = $_POST['titel'];
$date = $_POST['date'];
$text = $_POST['text'];
$av = $_POST['av'];
}

$add = "INSERT INTO nyheter (titel, date, text, av) VALUES ('$titel', '$date', '$text', '$av')";
mysql_query($add) or die(mysql_error());
?>
<html>
<title>Nyheten är updeaterad!</title>
Nyheterna är uppdaterade! <A HREF="index.php?s=start">Tillbaka</A>.
</html>

index.php

<?php
include ("include.php");
?>
<?php $res = mysql_query("SELECT * FROM nyheter ORDER BY date DESC LIMIT 8");
while($row = mysql_fetch_array($res)) { ?>
<font color="#000000" size="+1" face="Verdana, Arial, Helvetica, sans-serif">
<b><font color="#000000" size="+1">
<?=$row['titel']; ?>
</font></b></font> - <font color="#000000">
<?=$row['date']; ?> - Skrivet av: <?=$row['av']; ?>
</font> <font color="#000000"> <br>
<?=$row['text']; ?>
</font> <br>
<br>
<br>
<hr color="#FFFF66">
<?php } ?>

include.php

<?php
$lnk = mysql_connect('localhost', 'user', 'pass')
or die('Not connected : ' . mysql_error());
mysql_select_db('databas', $lnk) or die ('Can't use DB : ' . mysql_error());
?>

--------------------------------------------------------------------------------

Medlem sedan juni 200032 967 inlägg
#2

*) Byt namn på fälten date och text, de är reserverade ord.

*) Istället för LIMIT använder du SELECT TOP 8 * FROM...

*) Om ditt datumfält är av typen datum borde du byta apostroferna runt det värdet mot brädgårdar.

Medlem sedan dec. 20003 887 inlägg
#3

@nders skrev:

*) Om ditt datumfält är av typen datum borde du byta apostroferna runt det värdet mot brädgårdar.

Det gäller förvisso endast om din Accessdatabas är av äldre format än 2000. Från 2000 och uppåt kan man ha apostrof eller brädgård. Som herr @nders föreslår jag dock samma: använd brädgård istället.

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