muRumMedlem sedan juni 201011 inlägg
Jag har försökt fullbordat en gästbok i php samt lite kopplingar till min mySQL server.
Jag tänker inte lägga upp koderna förns jag har fått någon seriös som vill hjälpa till.
Men kan nämna problemen så kanske någon känner igen problemen? Kan så vara kan så vara.
Hemsidan där problemen uppstår
Problem #1
Jag vill att inläggen ska hamna i en ordning tvärtom, Alltså att det nyaste kommer först och inte det äldsta först och sen att de byggs på neråt.
Alltså inlägg #20 ska hamna längst upp och #19 under. o.s.v.
Kan någon fixa detta?
Problen #2
Det här är de största problemet.
De värdena man anger i Namn,Email,Meddalande...
Det finns ju inte med i "Klotterplanket" Varför registreras inte detta.
Någon som kan lösa detta kanske?
Tack på förhand
muRum
rhdfMedlem sedan okt. 2007447 inlägg
Problem 1
crash-kurs i SQL: ORDER BY vad_fältet_du_vill_sortera_på_heter DESC
Problem 2
uppenbarligen så sparas inläggen. Kolla så du verkligen hämtar formulärfälten med rätt namn min PHP-FU är ionte på topp, men ett tipps är att du testar att skriva ut din sql-query på sidan istället för att köra den för att se att värdena kommer med.
sen kanske du skall åtgärda den där tidsmaskinen;) ... inlägg 24 skrev jag kl. 03:33:16 inte 01:33:16 som sidan hävdar.
och slutligen.. seriöst så mycket tabeller för det där?
ok (men bara för att jag är på bra humör) med ful-lösningen för att få till formuläret.
men detta finns inte en ursäkt i världen som berättigar
<table width="400" border="0" align="center" cellpadding="3" cellspacing="0">
<tr>
<td><strong><a href="kikaklotterplank.php">Kika in planket</a> </strong></td>
</tr>
</table>
hört talas om <div> och <p> ?? §jr
muRumMedlem sedan juni 201011 inlägg
Koden till klotter.php
<!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=utf-8" />
<title>Klotterplanket</title>
</head>
<body>
<table width="400" border="0" align="center" cellpadding="3" cellspacing="0">
<tr>
<td><strong>Klottra på planket </strong></td>
</tr>
</table>
<table width="400" border="0" align="center" cellpadding="0" cellspacing="1" bgcolor="#CCCCCC">
<tr>
<form id="form1" name="form1" method="post" action="add_klotter.php">
<td>
<table width="400" border="0" cellpadding="3" cellspacing="1" bgcolor="#FFFFFF">
<tr>
<td width="117">Namn</td>
<td width="14">:</td>
<td width="357"><input name="name" type="text" id="name" size="40" /></td>
</tr>
<tr>
<td>Email</td>
<td>:</td>
<td><input name="email" type="text" id="email" size="40" /></td>
</tr>
<tr>
<td valign="top">Meddelande</td>
<td valign="top">:</td>
<td><textarea name="comment" cols="40" rows="3" id="comment"></textarea></td>
</tr>
<tr>
<td> </td>
<td> </td>
<td><input type="submit" name="Submit" value="Submit" /> <input type="reset" name="Submit2" value="Reset" /></td>
</tr>
</table>
</td>
</form>
</tr>
</table>
<table width="400" border="0" align="center" cellpadding="3" cellspacing="0">
<tr>
<td><strong><a href="kikaklotterplank.php">Kika in planket</a> </strong></td>
</tr>
</table>
</body>
</html>
koden till addklotter.php
<!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=utf-8" />
<title>Lägg till klotter</title>
</head>
<?php
$host="korvgrafik.se.mysql"; // Host name
$username="korvgrafik_se"; // Mysql username
$password="********"; // Mysql password
$db_name="korvgrafik_se"; // Database name
$tbl_name="klotterplank"; // Table name
// Connect to server and select database.
mysql_connect("$host", "$username", "$password")or die("Får inte tag på Servern");
mysql_select_db("$db_name")or die("Får inte tag på Databasen");
$datetime=date("y-m-d h:i:s"); //date time
$sql="INSERT INTO $tbl_name(name, email, comment, datetime)VALUES('$name', '$email', '$comment', '$datetime')";
$result=mysql_query($sql);
//check if query successful
if($result){
echo "Färdigt";
echo "<BR>";
echo "<a href='kikaklotterplank.php'>Kika i Klotterplanket</a>"; // link to view guestbook page
}
else {
echo "Någonting gick snett";
}
mysql_close();
?>
<body>
</body>
</html>
Koden till Kika klotterplanket
<!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=utf-8" />
<title>Klotterplank</title>
</head>
<body>
<table width="400" border="0" align="center" cellpadding="3" cellspacing="0">
<tr>
<td><a href="klotter.php">Klottra på planket</a></td>
</tr>
</table>
<br>
<?php
$host="korvgrafik.se.mysql"; // Host name
$username="korvgrafik_se"; // Mysql username
$password="*******"; // Mysql password
$db_name="korvgrafik_se"; // Database name
$tbl_name="klotterplank"; // Table name
// Connect to server and select database.
mysql_connect("$host", "$username", "$password")or die("cannot connect server ");
mysql_select_db("$db_name")or die("cannot select DB");
$sql="SELECT * FROM $tbl_name";
$result=mysql_query($sql);
while($rows=mysql_fetch_array($result)){
?>
<table width="400" border="0" align="center" cellpadding="0" cellspacing="1" bgcolor="#CCCCCC">
<tr>
<td><table width="400" border="0" cellpadding="3" cellspacing="1" bgcolor="#FFFFFF">
<tr>
<td>Antal Klotter</td>
<td>:</td>
<td><? echo $rows['id']; ?></td>
</tr>
<tr>
<td width="117">Namn</td>
<td width="14">:</td>
<td width="357"><? echo $rows['name']; ?></td>
</tr>
<tr>
<td>Email</td>
<td>:</td>
<td><? echo $rows['email']; ?></td>
</tr>
<tr>
<td valign="top">Meddelande</td>
<td valign="top">:</td>
<td><? echo $rows['comment']; ?><br /><br /><br /><br /><br /><br /></td>
</tr>
<tr>
<td valign="top">Tid </td>
<td valign="top">:</td>
<td><? echo $rows['datetime']; ?></td>
</tr>
</table></td>
</tr>
</table>
<BR>
<?
}
mysql_close(); //close database
?>
</body>
</html>
Där har vi alla koder.
Det är inte jag som har gjort själva designen för den. Den är tagen rakt av från en tutorial.
Kommer att fixa till designen på den så småningom. ;)
PeddaMedlem sedan juni 20004 880 inlägg
Serverns inställningar är nog att shorttags är Off.
Ändra denna raden i klotter.php
$sql="INSERT INTO $tbl_name(name, email, comment, datetime)VALUES('$name', '$email', '$comment', '$datetime')";
till:
$sql="INSERT INTO $tbl_name(name, email, comment, datetime)VALUES('{$_POST['name']}', '{$_POST['email']}', '{$_POST['comment']}', '$datetime')";
muRumMedlem sedan juni 201011 inlägg
Tack för det där.
Nu har det ordnat sig. Måste bara få till att det kommer i rätt ordning nu.
i tabellen. kan man få typ datetime +2h för det är ju i GMT nu och inte GMT +2?
PeddaMedlem sedan juni 20004 880 inlägg
muRum skrev:
Tack för det där.
Nu har det ordnat sig. Måste bara få till att det kommer i rätt ordning nu.
i tabellen. kan man få typ datetime +2h för det är ju i GMT nu och inte GMT +2?
För att sortera ändrar du raden:
$sql="SELECT * FROM $tbl_name";
till
$sql="SELECT * FROM $tbl_name ORDER BY id DESC";
När det gäller din datetime så bör du nog kolla på funktionerna date_add eller mktime beroende på om du kör php4 eller php5.
/red
Kolla i manualen för olika sätt att hantera datum. http://se.php.net/manual/en/function.date-add.php
muRumMedlem sedan juni 201011 inlägg
Jag får inte till det där med sorteringen.
Jag har hittat ett sätt när jag går in i min phpmyadmin och sedan redigerar det manuellt.
Men vill ju ha de ske automatiskt när man klickar t.ex. Kika in klotterplanket eller Submit knappen.
$sql="SELECT * FROM $tbl_name ORDER BY id DESC";
Jag testade att lägga till den där.
Men då blev de hel tokigt, eller vart ska den ligga?
PeddaMedlem sedan juni 20004 880 inlägg
Raden du ska ändra är i kikaklotterplank.php.
fiddlerMedlem sedan juli 20022 464 inlägg
muRum skrev:
Men då blev de hel tokigt, eller vart ska den ligga?
Den skall ligga i "Kika klotterplanket". Byt ut den gamla raden.
/Red. Sen som vanligt... :)
muRumMedlem sedan juni 201011 inlägg
Ja men du precis. Jag var inne i addklotter.php.
Klantigt av mig.
Därför jag inte hittade $sql raden som du skrev :)
rhdfMedlem sedan okt. 2007447 inlägg
du bara chansade och klipp-o-klistrade va?
du ser ingen likhet mellan din gamla Query:
$sql="SELECT * FROM $tbl_name";
och den som Pedda gav dig:
$sql="SELECT * FROM $tbl_name ORDER BY id DESC";
(dvs precis det svar jag gav dig i min post)
muRumMedlem sedan juni 201011 inlägg
phpMyAdmin - 2.9.2-Debian-1.one.com1
MySQL klientversion: 5.0.32...
Får inte date_add funktionerna att funka.
Kan det ha någonting med det över att göra?
Eller gör jag bara fel? :p
muRumMedlem sedan juni 201011 inlägg
rhdf skrev:
du bara chansade och klipp-o-klistrade va?
du ser ingen likhet mellan din gamla Query:
$sql="SELECT * FROM $tbl_name";
och den som Pedda gav dig:
$sql="SELECT * FROM $tbl_name ORDER BY id DESC";
(dvs precis det svar jag gav dig i min post)
Nej alltså.
Jag är nybörjade med SQL och .php.
Så har inte alls stor koll.
När jag såg kommentaren av dig satt jag inne i min phpmyadmin och mixtrade och ändrade och fattar ingenting.
Men nu när jag har angivit koderna är det lättare för mig att förstå vad ni menar med era posts :)
PeddaMedlem sedan juni 20004 880 inlägg
Lägga till två timmar på en datetime:
$datetime = new DateTime();
$datetime = date_add($datetime, new DateInterval("PT2H"));
echo $datetime->format("Y-m-d h:i:s");
PeddaMedlem sedan juni 20004 880 inlägg
Passar även på att flytta tråden till PHP från SQL
fiddlerMedlem sedan juli 20022 464 inlägg
muRum skrev:
När jag såg kommentaren av dig satt jag inne i min phpmyadmin och mixtrade och ändrade och fattar ingenting.
Ett litet råd: Mixtra inte alltför mycket i phpMyAdmin. Alla svar här rör koden. :)
muRumMedlem sedan juni 201011 inlägg
Nu har allting löst sig med det där.
Nu handlar det om att integrera allting.
Postar alla filer jag har i en .rar fil så kan någon kika på det kanske?
Förstår inte varför det inte fungerar att integrera i designen.
För att kolla på sidan kan ni kika här
BTW.
$timezone_identifier=date_default_timezone_set('Europe/Stockholm');
$datetime=date("y-m-d H:i:s"); //date time
Sådär löste jag klock problemet :)