jag testade men det fick inte , men va tycker du borde jag gör som jag sa på min förra inlägg eller?
utveckla gästbok?
30 svar · 3 417 visningar · startad av besto · sida 2 av 2
Ja 0 borde bli false
:/ så va ska jag göra nu XD ? hjälper det om jag postar hela gästbook.php och bild på databasen ?
Fungera databasen nu? Isåfall är det sen när du presentera alla inlägg och se om den är privat eller inte. Postar din kod
Det finns egentligen inget som heter Boolean i MySQL.
Det dem har gjort är att satt upp ett fälttyp med namnet boolean/bool men vad du får är en "tiny int" men length 1*.
Så sätt upp typen som "bool" och låt "length" vara ifred (MySQL kommer fylla i det automatiskt och sätta värdet till 1). Sätt upp "Defualt" till "As defined" och i rutan dirket efter skriver du 0. När allt är klart hoppar du till första sidan av phpMyAdmin och från ett select fält kan du byta ut "English" mot "Svenska" :)
Happy days
//Mr.1Buying
*= Tiny int tillhör den numeriska familjen av datatyper och är familjens minsta med ett max värde på 127 (signed) och kan som lägsta ha -128. När man sätter "length" på ett fält av numeriska familjen så deklarerar du högsta godkända värd för fältet, om du sätter exempel vis 10 (unsigned) kan du bara spara ner : 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 och 10. Om du försöker spara ner ett högre värde än så som exempel vis 12 eller 549 kommer MySQL att skala ner värdet till det närmaste godkända vilket i båda fallen blir 10.
ok mr1buying fyllde i exakt som jag sa och då fick jag denna error
Warning: mysql_result() [function.mysql-result]: Unable to jump to row 0 on MySQL result index 10 in /home/a5118691/public_html/gb.php on line 36
// Hämta ägarens användarnamn
$sqlk = "SELECT `user` FROM `members` WHERE `ID`=$ownerID";
$resultk = mysql_query($sqlk) or die("SQL: $sql<br />" . mysql_error());
$owner = mysql_result($resultk, 0);
detta är rad 36 :
$owner = mysql_result($resultk, 0);
Hur ser din tabell ut? och var kommer $ownerID ifrån?
om jag har förstått dig rätt :
// Ägare till gästboken
$ownerID = intval($_GET['user']);
gästbok scriptet :
<?php
session_start();
ob_start();
if (!isset($_SESSION['sess_id'])){
header("Location: index.php");
exit();
}
require_once "conn.php";
// Ägare till gästboken
$ownerID = intval($_GET['user']);
//Radera inlägg
if (isset($_GET['delete'])) {
if($_SESSION['sessionlevel'] > 1) {
$sql = "DELETE FROM guestbook WHERE id=" . intval($_GET['delete']);
} else {
$sql = "DELETE FROM guestbook WHERE id=" . intval($_GET['delete']) . " AND (author = '{$_SESSION['sess_id']}' OR owner = '{$_SESSION['sess_id']}')";
}
mysql_query($sql) or die("SQL: $sql<br />" . mysql_error());
header("Location: gb.php?user={$_GET['user']}");
exit();
}
$sql2 = "SELECT * FROM members WHERE id=$ownerID";
$result2 = mysql_query($sql2) or die("SQL: $sql<br />" . mysql_error());
while ($rad = mysql_fetch_assoc($result2)) {
}
// Hämta ägarens användarnamn
$sqlk = "SELECT `user` FROM `members` WHERE `ID`=$ownerID";
$resultk = mysql_query($sqlk) or die("SQL: $sql<br />" . mysql_error());
$owner = mysql_result($resultk, 0);
// Om ett nytt meddelande har skrivits, skriv in det i databasen
if (isset($_POST['message'])) {
$authorID = intval($_POST['author']);
$message = $_POST['message'];
/* om meddalandet är privat så sätts privat till true annars false */
if(isset($_POST['privat'])){
$privat=true;
}else{
$privat=false;
}
$sqlk = "INSERT INTO `guestbook` (`owner`, `author`, `date`, `message`, `privat`) VALUES ($ownerID, $authorID, NOW(), '$message', ' $privat')";
$result = mysql_query($sqlk) or die("SQL: $sql<br />" . mysql_error());
// Ladda om sidan så att $_POST töms...
header("Location: gb.php?user=$ownerID");
exit();
}
?>
<html>
<head>
<title> Gästbok </title>
</head>
<body>
<?php echo $owner; ?> Gästbok
<form action="gb.php?user=<?php echo $ownerID; ?>" method="post">
<input type="hidden" name="author" value="<?php echo $_SESSION['sess_id']; ?>">
Skriv ett meddelande:<br>
<textarea name="message" cols="40" rows="4" width="120" height="70"></textarea><br>
<input type="checkbox" name="privat" value="privat" />
<input type="submit" value="Skicka">
</form>
<?php
// Visa alla meddelanden... sortera efter datum i fallande ordning (senast skrivna inlägg visas först)
$sql = "SELECT *,g.ID as inlagg,DATE_FORMAT(g.`date`,'%Y-%m-%d %H:%i') AS datum FROM `guestbook` g INNER JOIN `members` m ON g.`author`=m.`ID` WHERE g.`owner`=$ownerID ORDER BY g.`date` DESC";
$result = mysql_query($sql) or die("SQL: $sql<br />" . mysql_error());
while ($row = mysql_fetch_assoc($result)) {
echo "<br><b>Från</b> {$row['user']} , {$row['datum']}<br>";
echo "-------------------------<br>";
echo nl2br(htmlentities($row['message']));
if ($_SESSION['sess_id'] == $ownerID || $_SESSION['sess_id'] == $row['author_ID']) {
echo " <a href=\"gb.php?user=$ownerID&delete={$row['inlagg']}\">Radera</a><br><br>";
}
}
ob_end_flush();
?>
</body></h2>
</html>
´jamen nåt nytt ? :D
har du något user querystring värde? du behöver ju det för att hämta ut något från din databas:
if(!isset($_GET['user']) { return;}
// Ägare till gästboken
$ownerID = intval($_GET['user']);
om det inte finns något user querystring värde i min förra inlägg så finns det inte i scriptet , scriptet består ju bara av gästbok.php och den har jag redan gett er :D