webForumDet fria alternativet

Sök problem felmeddelande

PHP

16 svar · 579 visningar · startad av Race

Medlem sedan apr. 20099 inlägg
Frågan#1

Hej, jag är en nybörjare inom php och undrar ifall någon kan hjälpa mig med mitt sök formulär. Jag får hela tiden detta felmeddelande. Skulle uppskatta all hjälp ;). /tack på förhand.

Parse error: syntax error, unexpected ',' on line 49

<?php
function db_search($key) {
$con = db_connect();
$key = mysql_escape_string($key);
$sql = "SELECT DISTINCT namn FROM annonser WHERE namn LIKE '%".$bil."%'";
$result = mysql_query($sql,$con);
mysql_close($con);
return $result;
}

if(isset($_REQUEST['key']))
{
$key = $_REQUEST['key'];
$result = db_search_bible($key);
if($result == FALSE)
$content = 'No Match Found';

else
while ($row = mysql_fetch_row($result)) {
$content .= $row[0].', '.$row[1].', '.$row[2].’, '.$row[3].'…<br>';
}

echo $content;

if(isset($_REQUEST['key']))
{
$key = $_REQUEST['key'];
$result = db_search_bible($key);
$html = ‘<html><head><title>Search Results</title></head><body><table border=0 width=”100%”><!-contentà’</table></body></html>’;

if($result == FALSE)
$content = '<tr><td>No Match Found</td></tr>';

else
{
$content = “”;
while ($row = mysql_fetch_row($result)) {
$content .= ‘<tr><td><h2>’.$row[0].'</h2> <br><br>'.$row[1].'</td></tr>’;
}
}

$html = str_replace("<!--content-->",$content,$html);

echo $html;
?>

//här är även formuläret
*********************************************************
<?php include"header.php"; ?>

<div id="container">
<h2>Sök</h2>
<form name="search" method="post" action="sok_resultat2.php">
Sök efter: <input type="text" name="key" />
<input type="submit" name="search" value="Search" />
</form>
</div>
<?php include"fotter.php"; ?>

Medlem sedan mars 2007845 inlägg
#2
$content .= $row[0].', '.$row[1].', '.$row[2].’, '.$row[3].'…<br>';

'-tecknet i den raden efter är $row[2]. inte en standard enkelflärp. Byt ut den.

$html = ‘<html><head><title>Search Results</title></head><body><table border=0 width=”100%”><!-contentà’</table></body></html>’;

Samma sak i den raden. Alla enkelflärpar eller åtminstone den första och den sista är fel tecken.

$content .= ‘<tr><td><h2>’.$row[0].'</h2> <br><br>'.$row[1].'</td></tr>’;

i den raden är 1'a, 2'a och sista ' fel.

Vad är det för editor du använder? Det är tecknet till höger om ä på ett standard svenskt qwerty-tangentbord du ska använda.

Medlem sedan apr. 20099 inlägg
#3

Tack, men det blir fortfarande problem, har antagligen missat något annat.. får fortfarande fel. skulle uppskatta om detta kunde lösas suttit väldigt länge med detta. Tack ännu en gång för ditt svar ;)

Parse error: syntax error, unexpected ',' in line 49

ps. jo jag använder en beta php text editor

function db_connect(){

global $db_server;
global $db_name;
global $db_username;
global $db_password;

$con =@ mysql_connect($db_server,$db_username,$db_password);
if ($con!=false){
    if (!(mysql_select_db($db_name,$con))){
        // cannot find database
        die("Cannot find Database");
    } else {
        // fine
    }
} else {
    die ("Cannot connect to database");
}
return $con;

}

function db_search($key) {
$con = db_connect();
$key = mysql_escape_string($key);
$sql = "SELECT DISTINCT namn FROM annonser WHERE namn LIKE '%".$bil."%'";
$result = mysql_query($sql,$con);
mysql_close($con);
return $result;
}

if(isset($_REQUEST['key']))
{
$key = $_REQUEST['key'];
$result = db_search_bible($key);
if($result == FALSE)
$content = 'No Match Found';

else
while ($row = mysql_fetch_row($result)) {
$content .= '.$row[0].', '.$row[1].', '.$row[2].', '.$row[3].'<br>;
}

echo $content;

if(isset($_REQUEST['key']))
{
$key = $_REQUEST['key'];
$result = db_search_bible($key);
$html = '<html><head><title>Search Results</title></head><body><table border=0 width=”200px”>'<!--content-->'</table></body></html>';

if($result == FALSE)
$content = '<tr><td>No Match Found</td></tr>';

else
{
$content = 'Found';
while ($row = mysql_fetch_row($result)) {
$content .= '<tr><td><h2>'.$row[0].'</h2> <br><br>'.$row[1].'</td></tr>';
}
}

$html = str_replace('<!--content-->'),$content,$html);

echo $html;
?>

Medlem sedan dec. 2004736 inlägg
#4
...
else
while ($row = mysql_fetch_row($result)) {
$content .= $row[0].', '.$row[1].', '.$row[2].', '.$row[3].'<br>';
}
...

Lägg märke till de borttagna '. i början av strängen. $content .= $row... istället för $content .= '.$row... samt den tillagda ' efter <br>!

Medlem sedan apr. 20099 inlägg
#5

Parse error: syntax error, unexpected T_ELSE in line 49 antar att det har med detta att göra? ursäkta alla frågor måste blandat ihop massa..

else
{
$content = "";
while ($row = mysql_fetch_row($result)) {
$content .= '<tr><td><h2>'.$row[0].'</h2> <br><br>'.$row[1].'</td></tr>';
}
}

$html = str_replace('<!--content-->'),$content,$html);

echo $html;

Medlem sedan mars 20034 471 inlägg
#6

Race omgärda din php-kod med php-taggar alltså:
[ php] //koden [ /php] (fast utan mellanslag i taggarna) blir

 //koden

och gör kodstyckena MYCKET mer lättlästa.

Medlem sedan apr. 20099 inlägg
#7
 function db_connect(){

    global $db_server;
    global $db_name;
    global $db_username;
    global $db_password;

    $con =@ mysql_connect($db_server,$db_username,$db_password);
    if ($con!=false){
        if (!(mysql_select_db($db_name,$con))){
            // cannot find database
            die("Cannot find Database");
        } else {
            // fine
        }
    } else {
        die ("Cannot connect to database");
    }
    return $con;
}

function db_search($key) {
        $con = db_connect();
    $key = mysql_escape_string($key);
    $sql = "SELECT DISTINCT namn FROM annonser WHERE namn LIKE '%".$bil."%'";
        $result = mysql_query($sql,$con);
        mysql_close($con);
    return $result;
}

if(isset($_REQUEST['key']))
{
   $key = $_REQUEST['key'];
   $result = db_search_bible($key);
  if($result == FALSE)
    $content = 'No Match Found';

else
    while ($row = mysql_fetch_row($result)) {
            else
while ($row = mysql_fetch_row($result)) {
$content .= $row[0].', '.$row[1].', '.$row[2].', '.$row[3].'<br>';
}
  
}

echo $content;

if(isset($_REQUEST['key']))
{
   $key = $_REQUEST['key'];
   $result = db_search_bible($key);
   $html = '<html><head><title>Search Results</title></head><body><table border=0 width="200px">'<!--content-->'</table></body></html>';

  if($result == FALSE)
    $content = '<tr><td>No Match Found</td></tr>';

else
   {
    $content = "";
    while ($row = mysql_fetch_row($result)) {
            $content .=  '<tr><td><h2>'.$row[0].'</h2> <br><br>'.$row[1].'</td></tr>';
   }
}

$html = str_replace('<!--content-->'),$content,$html);

echo $html; 
?>
Medlem sedan mars 2007845 inlägg
#8
while ($row = mysql_fetch_row($result)) {
            else
while ($row = mysql_fetch_row($result)) {
$content .= $row[0].', '.$row[1].', '.$row[2].', '.$row[3].'<br>';
}

Det är ett "else" där som inte ska vara där.

Jag tippar att

while ($row = mysql_fetch_row($result)) {
            else

ska bort helt och hållet. Du ska inte ha två såna efter varandra.

Medlem sedan apr. 20099 inlägg
#9

blev helt klart bättre men fick nu. Parse error: syntax error, unexpected T_DEC, expecting T_PAAMAYIM_NEKUDOTAYIM in 61

Medlem sedan mars 2007845 inlägg
#10
$html = '<html><head><title>Search Results</title></head><body><table border=0 width="200px">'<!--content-->'</table></body></html>';

Ta bort ' före och efter <!--content-->.

Medlem sedan apr. 20099 inlägg
#11

Parse error: syntax error, unexpected ',' in line 74 går frammåt iaf :)

tack för allt än så länge. uppmärksammar gärna mer hjälp.

Medlem sedan mars 2007845 inlägg
#12

Börja med att tanka hem en editor med syntax-kontroll. Ex Komodo Edit finns till dom flesta OS. Notepad++ är också bra har jag för mig, men den finns bara till Win.

Åtminstone Komodo Edit visar med rött underline den första raden med syntaxfel. Det går mycket fortare än att be om hjälp för varje syntax error du stöter på.

Om ingen av dom editorerna kan hjälpa dig så posta koden igen och markera raden du får felmess på.

Medlem sedan apr. 20099 inlägg
#13

Tack för tippset. tankade ner komodo editor nu. ser iaf var felet ligger problemet blir dock vad som ska ändras. men det kommer nog efter några timmars sömn. :)

Medlem sedan mars 2007845 inlägg
#14

Den kan ibland rödmarkera raden efter. Lite beroende på vad det är för fel.

Medlem sedan apr. 20099 inlägg
#15

$html = str_replace('<!--content-->'),$content,$html);

Parse error: syntax error, unexpected ',' in line 74 får det inte att fungera ändå!.

Medlem sedan juli 20023 617 inlägg
#16

Ett ")" för mycket.

Medlem sedan apr. 20099 inlägg
#17

Tack för all hjälp fick min sök fulländad till slut ;)!. jag stänger tråden nu.

267 ms totalt · 4 externa anrop · v20260731065814-full.6fe65c25
121 ms — deklarationer (db)
0 ms — hämta statistik (cache)
138 ms — hämta tråd, inlägg och bilagor (db)
126 ms — ändringar (db)