Med färgkodningen ovan ser man ganska tydligt att du glömt en " på den här raden. Möjligen är det något mer som felar
mysql_query("$sql);
13 svar · 457 visningar · startad av mr.mainline
jag håller på att lära mig lite PHP och använder mig av boken PHP 5 Programering,och i den så finns en enkel gästbok kod som jag försöker få att fungera,jag har skapat tabellen,och skivit denna kod,men får felmedelande"Parse error: parse error, unexpected $ in /customers/freddeholm.com/freddeholm.com/httpd.www/forum.php on line 49"
<html>
<head>
<title>Forum</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body bgcolor="#FFFFFF" text="#666666" link="#003399" vlink="#003399" alink="#003399"><font color="#FFFFFF">
<?php
if(isset($_POST['nytt'])){
matain();
}
$länk = mysql_connect("localhost","",""); //Databaskoppling
$sql="SELECT*FROM forum ORDER BY datum DESC ";
$result = mysql_db_query("dbfreddeholm_com","$sql");
while($rad=mysql_fetch_array($results)){
?>
<font face="verdena" size="2">
<p><?=$rad["inlagg"]?></p>
<a href="mailto:<?=$rad["epost"]?><>?=$rad["namn"]?></a>,<?=$rad["datum"]?>
<hr>
<?}
mysql_close($länk);
?>
<form method="POST"action="forum.php"name="matain" OnSubmit="return
skicka_OnClick();">
Namn:<br><input type="text"name="namn"><br>
Epost:<br><input type="text"name="epost"><br>
Inlägg:<br><textarea name="inlagg" rows=5" cols="30"></textarea><br>
<br> <input type="submit" name="nytt" value="Skicka"> <input type="reset"
value="Återställ">
<br>
</form>
</font>
<?
function matain(){
$datum=date("Y-m-d H:i:s");
$länk=mysql_connect("localhost","","");
$databas=mysql_select_db("dbfreddeholm_com");
$namn=$_POST['namn'];
$inlagg=$_POST['inlagg'];
$epost=$_POST['epost'];
$sql="INSERT INTO forum(namn,inlaff,epost,datum)
VALUES('$namn','$inlagg','$epost','$datum')";
mysql_query("$sql);
mysql_close ($länk);
}
?>
</body>
</html>
Med färgkodningen ovan ser man ganska tydligt att du glömt en " på den här raden. Möjligen är det något mer som felar
mysql_query("$sql);
<a href="mailto:<?=$rad["epost"]?><>?=$rad["namn"]?></a>,<?=$rad["datum"]?>
har du inte lagt en > för mkt där vid >?=$rad["namn"]?> ??
jag tror det är något fel med databaskopplingen.
Du får alltså samma felmeddelande om du provar att rätta till de fel som jag och tronez anmärkt på? Vilken är rad 49 (som det klagas på)?
Först och främst är det nu rad 14 denna rad
while($rad=mysql_fetch_array($result)) {
får detta felmeddelande:Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /customers/freddeholm.com/freddeholm.com/httpd.www/forum.php on line 14
och rad 49 är slutet på php scriptet ,raden efter </body>
</html>
Är denna databaskoppling rätt:
$länk = mysql_connect("localhost","Databas namn här","Lösen här!");$sql = "SELECT*FROM forum ORDER BY datum DESC ";
$result = mysql_db_query("dbNamnet på databasen här!!","$sql");
$länk = mysql_connect("localhost","dbfreddeholm_com","dittlösenomduharnågot");
mysql_select_db("dbfreddeholm_com",$länk);
Värt att prova...
nopp får fyra felmeddelande där:Warning: mysql_connect(): Access denied for user: 'dbfreddeholm_com@localhost' (Using password: YES) in /customers/freddeholm.com/freddeholm.com/httpd.www/forum.php on line 11
Warning: mysql_select_db(): supplied argument is not a valid MySQL-Link resource in /customers/freddeholm.com/freddeholm.com/httpd.www/forum.php on line 12
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /customers/freddeholm.com/freddeholm.com/httpd.www/forum.php on line 13
Warning: mysql_close(): supplied argument is not a valid MySQL-Link resource in /customers/freddeholm.com/freddeholm.com/httpd.www/forum.php on line 19
Hejsan :)
Det första felmeddelandet kan innebära ganska mycket, har alltid funnit just detta felmeddelande aningen kryptiskt, men efter att ha läst hur du försöker ansluta så skulle jag dra slutsatsen att du använder fel användarnamn för att ansluta, och att databasen inte känner igen det användarnamnet och stänger dig ute.
Koden du behöver ändra är:
$link = mysql_connect("localhost","dittAnvändarnamn","dittLösenord");
mysql_select_db("databasensNamn",$link);
$result = mysql_query($sql, $link);
Detta borde få fart på saker och ting, glöm bara inte bort att ersätta "dittAnvändarnamn" med ett riktigt giltigt användernamn, "dittLösenord" med ett riktigt lösen och databasensNamn med namnet på databasen som du skapat (det borde ju vara "dbfreddeholm_com")
MVH Patrik
jag får fel på denna rad
while($rad=mysql_fetch_array($result)) {
och denna
mysql_close($länk);
å, ä och ö är ingen höjdare inom programmering.
då försvann ett felmeddelande,bara denna rad kvar:
while($rad=mysql_fetch_array($result)) {
Felmeddelandet brukar hänga samman med antingen fel på MySQL-uppkopplingen eller fel i SQL-frågan.
Låt MySQL tala om för dig vad som är fel:
$result = mysql_query($sql, $link) or die("SQL: $sql <br>".mysql_error());