-1
だから私はphpとsqlでいくつかの作業をしています。このPHPコードは動作しません、私はこれと何をする必要があるかを知る必要があります。21行目のコードにelse(T_ELSE)があります。
が、私はこのエラーを取得しています。エラー解析:行に「私のファイルパス」に構文エラー、予期しない「他の」(T_ELSE)を21
<?php
$debug = true;
# Shows the records in prints
function show_records($dbc) {
# Create a query to get the name and price sorted by price
$query = 'SELECT num, fname, lname FROM presidents ORDER BY num DESC' ;
# Execute the query
$results = mysqli_query($dbc , $query) ;
check_results($results) ;
}
function valid_number($dbc, $num, $fname, $lname){
if(!valid_number($num)) {
echo "<p>Please give a valid number.</p>"; }
else {
if (!valid_name($fname))
echo "<p>Please complete the first name.</p>"; }
else{
if (!valid_name($lname)){
echo "<p>Please complete the last name.</p>"; }}
else {
insert_record($dbc,$num,$fname,$lname) ; }
function valid_number($num){
{ if(empty($num) || !is_numeric($num)) }
return false ; }
else {
$num = intval($num) ;
if($num <= 0){
return false ;}
}
return true; }
function valid_name($fname, $lname){
if(!empty($fname) && !empty($lname)) {
return false;
}
else
return true;
}
# Show results
if($results)
{
# But...wait until we know the query succeeded before
# starting the table.
echo '<H1>Presidents</H1>' ;
echo '<TABLE border="1\"">';
echo '<TR>';
echo '<TH>Number</TH>';
echo '<TH>First Name</TH>';
echo '<TH>Last Name</TH>';
echo '</TR>';
# For each row result, generate a table row
while ($row = mysqli_fetch_array($results , MYSQLI_ASSOC))
{
echo '<TR>' ;
echo '<TD>' . $row['num'] . '</TD>' ;
echo '<TD>' . $row['fname'] . '</TD>' ;
echo '<TD>' . $row['lname'] . '</TD>' ;
echo '</TR>' ;
}
# End the table
echo '</TABLE>';
# Free up the results in memory
mysqli_free_result($results) ;
}
# Inserts a record into the prints table
function insert_record($dbc, $num, $fname, $lname) {
$query = 'INSERT INTO presidents(num, fname, lname) VALUES (' . $num . ' , "' . $fname . '", "' . $lname . '")' ;
show_query($query);
$results = mysqli_query($dbc,$query) ;
check_results($results) ;
return $results ;
}
# Shows the query as a debugging aid
function show_query($query) {
global $debug;
if($debug)
echo "<p>Query = $query</p>" ;
}
# Checks the query results as a debugging aid
function check_results($results) {
global $dbc;
if($results != true)
echo '<p>SQL ERROR = ' . mysqli_error($dbc) . '</p>' ;
}
?>
は大丈夫、それは私のポストはほとんどのコードはので、ここでいくつかのだと言います充填剤。私はちょうど答えを必要とするこれはフィラーですuhhhhhええ
'if(!valid_name($ fname))'は新しいブロックを開きません。私。 '{'はありません。しかし、次の行でそれを閉じようとします。実際には、前にelseブロックを閉じてエラーを引き起こします。 – jh1711
コードをインデントしてください。あなたのライン21はどこですか?この行にあるかどうかを確認してください。 '{' – sheplu
@ jh1711これは本当にありがたいことです。ありがとうございます。結果変数が定義されていない場合、エラーが発生しているようです。 – jwsqljava