\n"; echo "\n"; echo " bugs of type "; show_types($bug_type,1,"bug_type"); echo "\n"; } function show_types($first_item,$show_any,$var_name) { $items = array("Any", "Feature/Change Request", "Documentation problem", "Installation problem", "Failed to compile", "Parser error", "Performance problem", "MySQL related", "mSQL related", "PostgreSQL related", "ODBC related", "Oracle related", "Sybase related", "Solid related", "Adabas-D related", "dBase related", "dbm related", "Other"); echo "\n"; } function find_password($user) { $fp=fopen("/repository/CVSROOT/passwd","r"); while(!feof($fp)) { $line=fgets($fp,120); list($luser,$passwd,$junk) = explode(":",$line); if($user==$luser) { fclose($fp); return($passwd); } } fclose($fp); return(""); } function addlinks($text) { $text = htmlspecialchars($text); $new_text = ereg_replace("(http:[^ \n\t]*)","\1",$text); $new_text = ereg_replace("(ftp:[^ \n\t]*)","\1",$text); $new_text = ereg_replace("[.,]-=-\"","\"",$new_text); $new_text = ereg_replace("-=-\"","\"",$new_text); return $new_text; } if (isset($cmd) && $cmd == "Send bug report") { if(!ereg("@",$email)) { echo "Please provide a valid email address

\n"; include("include/footer.inc"); exit; } if($bug_type=="--Please Select--") { echo "Please select an appropriate bug type

\n"; include("include/footer.inc"); exit; } show_menu($status); echo "


\n"; mysql_pconnect("localhost","",""); mysql_select_db("php3"); $ts=date("Y-m-d H:i:s"); mysql_query("INSERT into bugdb values (0,'$bug_type','$email','$sdesc','$ldesc','$php_version','$php_os','Open','','$ts','$ts','','')"); $cid = mysql_insert_id(); $report = ""; echo("
\n");

    $ldesc = stripslashes($ldesc);
    $sdesc = stripslashes($sdesc);
    $report .= "From:             $email\n";
    $report .= "Operating system: $php_os\n";
    $report .= "PHP version:      $php_version\n";
    $report .= "PHP Bug Type:     $bug_type\n";
    $report .= "Bug description:\n";
    $report .= indent($ldesc, "    ");

    $html_report = ereg_replace("<", "<", $report);
    $html_report = ereg_replace(">", ">", $html_report);

    echo $html_report;

    echo("
\n"); if (Mail($destination, "Bug #$cid: $sdesc", $report, "From: $email")) { echo("

Mail sent to $destination...

\n"); echo("Thank you for your help!\n"); } else { echo("

Mail not sent!

\n"); echo("Please send this page in a mail to " . "$email manually.\n"); } } elseif(isset($cmd) && $cmd=="Display Bugs") { show_menu($status); echo "
\n"; include("table_wrapper.inc"); function external_processing($fieldname,$tablename,$data,$row) { switch($fieldname) { case "id": print "$data\n"; break; case "Originator": print "$data\n"; break; case "Modify": print "\n"; break; default: print $data; break; } } function row_coloring($row) { switch($row["Status"]) { case "Open": return "#ffbbaa"; break; case "Closed": return "#aaffbb"; break; case "Assigned": return "#bbaaff"; break; default: return "#aaaaaa"; break; } } $external_processing_function="external_processing"; $row_coloring_function="row_coloring"; mysql_pconnect("localhost","bourbon",""); mysql_select_db("php3"); $tables[] = "bugdb"; $fields[] = "id"; $fields[] = "bug_type"; $fields[] = "status as Status"; $fields[] = "assign as Assigned"; # $fields[] = "php_version as Version"; # $fields[] = "php_os as OS"; $fields[] = "email as Originator"; $fields[] = "sdesc as Description"; $fields[] = "id as Modify"; $conversion_table["id"] = "ID#"; $conversion_table["bug_type"] = "Bug Type"; $pass_on = ereg_replace(" ","+","&cmd=Display+Bugs&status=$status&bug_type=$bug_type"); $default_header_color="aaaaaa"; $centering["id"] = $centering["Modify"] = "center"; $dont_link["Modify"]=1; if (!isset($order_by)) { $order_by = "id"; } if($status=="All" && $bug_type=="Any") { /* nothing */ } elseif($status=="All" && $bug_type!="Any") { $where_clause = "bug_type='$bug_type'"; } elseif($status!="All" && $bug_type=="Any") { /* Treat assigned bugs as open */ if($status=="Open") { $where_clause = "status='Open' or status='Assigned'"; } else { $where_clause = "status='$status'"; } } else { if($status=="Open") { $where_clause = "(status='Open' or status='Assigned') and bug_type='$bug_type'"; } else { $where_clause = "status='$status' and bug_type='$bug_type'"; } } table_wrapper("php3"); echo "
Submit a Bug Report
\n"; } else if(!isset($cmd) && isset($id)) { show_menu($status); echo "
\n"; mysql_pconnect("localhost","bourbon",""); mysql_select_db("php3"); if(isset($modify) && $modify=="Edit Bug") { $ok=0; if($user!="cvsread") { $psw=find_password($user); if(strlen($psw)>0) { if(crypt($pw,substr($psw,0,2))==$psw) { $ts=date("Y-m-d H:i:s"); if($status=="Delete!") { mysql_query("DELETE from bugdb where id=$id"); } else { mysql_query("UPDATE bugdb set status='$estatus', bug_type='$ebug_type', assign='$eassign', comments='$comments', ts2='$ts', dev_id='$user' where id=$id"); } $ok=1; } } } if(!$ok) { echo "Sorry, incorrect user id/password pair.
\n"; Mail("rasmus@lerdorf.on.ca", "bugdb auth failure for $user/$pw", "", "From: bugdb"); } else { echo "Database updated!
\n"; } } $result = mysql_query("SELECT * from bugdb where id=$id"); if(mysql_numrows($result)>0) { $row = mysql_fetch_row($result); echo "

Bug id #$id

\n"; echo "\n"; if(!isset($edit)) { echo ""; echo ""; } else { echo "\n"; echo "\n"; echo "\n"; echo "\n"; echo "\n"; if(!isset($edit)) { echo "\n"; } else { echo "\n"; } echo "\n"; echo "\n"; echo "\n"; echo "\n"; echo "
Status:".$row[7]."Modify
Status:\n"; echo "Assign to: \n"; } echo "
From:".$row[2]."
Date:".$row[9]."
Type:".$row[1]."
Type:\n"; show_types($row[1],0,"ebug_type"); echo "
OS:".$row[6]."
PHP Version:".$row[5]."
Assigned To:".$row[12]."
Short Desc.:".$row[3]."
\n"; $text = addlinks($row[4]); echo "
".$text."
\n"; if(!isset($edit)) { if(strlen($row[8])) { echo "[".$row[10]."] Updated by ".$row[11]."
\n"; $text=addlinks($row[8]); echo "
".$text."
\n"; } } else { echo "Developer Comments:
\n"; echo "
\n"; echo "CVS user id: \n"; echo "CVS password: \n"; echo "\n"; echo "\n"; } } else { if(isset($modify) && $status=="Delete!") { echo "

Bug id #$id has been deleted

\n"; } else { echo "

Sorry bug id #$id does not exist

\n"; } } mysql_freeresult($result); } else { show_menu($status); ?> Or use the form below to submit a new bug report.

Please make sure you have read our list of Frequently Asked Questions to see whether your problem may already be a known issue, and also check the bug database for any outstanding bug reports that match your bug.
Your email address:
PHP version:
Type of bug:
Operating system: ">
Bug description:
Please supply any information that may be helpful in fixing the bug:
  • A short script that reproduces the problem
  • The list of modules you compiled PHP with (your configure line)
  • A copy of your php3.ini file (if it might be relevant)
  • Any other information unique or specific to your setup