xxreenaxx1 Posted October 20, 2010 Share Posted October 20, 2010 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta name="description" content="Nearest Neighbour Algorithm - Data Mining" /> <meta name="keywords" content="nearest neighbour, data mining, php, computer science, james hamilton" /> <meta http-equiv="Content-Language" content="en-gb" /> <meta http-equiv="content-type" content="text/html; charset=UTF-8" /> <meta name="robots" content="all" /> <meta name="revisit-after" content="1 days" /> <title>Nearest Neighbour Algorithm - Data Mining11</title> <?PHP echo "<br><left><small>CONNECTION MESSAGES <br>"; echo "<ul>"; echo "<li>establishing connection with database</li>"; $conn = pg_Connect ("port=5432 dbname=my-database user=nobody"); if (!$conn) { echo "<li>connection to database failed</li>" ; exit; } echo "<li>connection to database ok</li>" ; ?> <link rel="stylesheet" media="all" href="style.css" type="text/css" /> <link rel="stylesheet" media="all" href="nearestneighbour.css" type="text/css" /> </head> <body> <?php if(isset($_GET[source])) { highlight_file(__FILE__); }else{ ?> <p>The nearest neighbour algorithm classifies a given instance based on a set of already classified instances (the training set), by calculating the distance to the nearest training case. The new instance is classified in the same class as the closest training case (i.e. the one that has the least differences/the one that is most the same). </p> <p> Try this out below. There are 10 instances in the training set. Use the select boxes to diagnose a new patient using the nearest neighbour algorithm. The diagnosis is made by selecting the diagnosis (class) of the instance in the training set with the least differences (i.e. closest distance). </p> <table id="patients" cellpadding="3" cellspacing="0"> <tr> <th>Patient ID</th> <th>age</th> <th>sex</th> <th>chestpaintype</th> <th>bloodpressure</th> <th>cholesterol</th> <th>fbs120</th> <th>restingegh</th> <th>maxheartrate</th> <th>angina</th> <th>slop</th> <th>thal</th> <th>diagnosis</th> </tr> <?php /* function getRows takes an SQL query string (and a optional array key type - NUM or ASSOC) and returns and array containing all the rows of the query. define(ASSOC, 1); define(NUM, 2); function getRows($sql, $type=ASSOC) { $result = mysql_query($sql); if($type == ASSOC) { while($row = mysql_fetch_array($result)) $ret[] = $row; }else if($type == NUM) { while($row = mysql_fetch_row($result)) $ret[] = $row; }else{ die("type should be NUM or ASSOC"); } return $ret; } */ $rows = getRows("SELECT * FROM heartcondition;", NUM); $closest = -1; if(isset($_POST[diagnose])) { $distance = array_fill(0, count($rows), 0); $instance = $_POST[instance]; for($i = 0; $i < count($rows); $i++) { for($j = 1; $j < 11; $j++) { if($rows[$i][$j] != $instance[$j]) $distance[$i]++; } } $closest = array_search(min($distance), $distance); $diagnosis = $rows[$closest][12]; } $a = 0; foreach($rows as $row) { ?> <tr<?php if($closest == $a) { ?> class="selected"<?php } ?>> <td><?=$row[0]?></td> <td><?=$row[1] == 0 ? "No" : "Yes"; ?></td> <td><?=$row[2] == 0 ? "No" : "Yes"; ?></td> <td><?=$row[3] == 0 ? "No" : "Yes"; ?></td> <td><?=$row[4] == 0 ? "No" : "Yes"; ?></td> <td><?=$row[5] == 0 ? "No" : "Yes"; ?></td> <td><?=$row[6] == 0 ? "No" : "Yes"; ?></td> <td><?=$row[7] == 0 ? "No" : "Yes"; ?></td> <td><?=$row[8] == 0 ? "No" : "Yes"; ?></td> <td><?=$row[9] == 0 ? "No" : "Yes"; ?></td> <td><?=$row[10] == 0 ? "No" : "Yes"; ?></td> <td><?=$row[11] == 0 ? "No" : "Yes"; ?></td> <td><?=$row[12]?></td> <td><?=$distance[$a++]?></td> </tr> <?php } ?> <tr> <form method="post" action="<?=$_SERVER['PHP_SELF']?>"> <td><input type="hidden" name="instance[]" value="11" />11</td> <td><select name="instance[]"> <option value="0"<?php if($_POST[instance][1] == "0") echo "selected=\"selected\"";?>>No</option> <option value="1"<?php if($_POST[instance][1] == "1") echo "selected=\"selected\"";?>>Yes</option> </select> </td> <td><select name="instance[]"> <option value="0"<?php if($_POST[instance][2] == "0") echo "selected=\"selected\"";?>>Sixties</option> <option value="1"<?php if($_POST[instance][2] == "1") echo "selected=\"selected\"";?>>forties</option> <option value="1"<?php if($_POST[instance][2] == "2") echo "selected=\"selected\"";?>>fifties</option> <option value="1"<?php if($_POST[instance][2] == "2") echo "selected=\"selected\"";?>>thirties</option> </select> </td> <td><select name="instance[]"> <option value="0"<?php if($_POST[instance][3] == "0") echo "selected=\"selected\"";?>>Male</option> <option value="1"<?php if($_POST[instance][3] == "1") echo "selected=\"selected\"";?>>Female</option> </select> </td> <td><select name="instance[]"> <option value="0"<?php if($_POST[instance][4] == "0") echo "selected=\"selected\"";?>>Angina</option> <option value="1"<?php if($_POST[instance][4] == "1") echo "selected=\"selected\"";?>>AbnomalAngina</option> <option value="1"<?php if($_POST[instance][4] == "2") echo "selected=\"selected\"";?>>No tang</option> <option value="1"<?php if($_POST[instance][4] == "3") echo "selected=\"selected\"";?>>Asymptomatic</option> </select> </td> <td><select name="instance[]"> <option value="0"<?php if($_POST[instance][5] == "0") echo "selected=\"selected\"";?>>onethirty+</option> <option value="1"<?php if($_POST[instance][5] == "1") echo "selected=\"selected\"";?>>oneten+</option> <option value="1"<?php if($_POST[instance][5] == "2") echo "selected=\"selected\"";?>>onefourty+</option> <option value="1"<?php if($_POST[instance][5] == "3") echo "selected=\"selected\"";?>>onefifty+</option> <option value="1"<?php if($_POST[instance][5] == "4") echo "selected=\"selected\"";?>>onetwenty+</option> <option value="1"<?php if($_POST[instance][5] == "5") echo "selected=\"selected\"";?>>onesisty+</option> </select> </td> <td><select name="instance[]"> <option value="0"<?php if($_POST[instance][6] == "0") echo "selected=\"selected\"";?>>twoten+</option> <option value="1"<?php if($_POST[instance][6] == "1") echo "selected=\"selected\"";?>>twosixty+</option> <option value="1"<?php if($_POST[instance][6] == "2") echo "selected=\"selected\"";?>>twofifty+</option> <option value="1"<?php if($_POST[instance][6] == "3") echo "selected=\"selected\"";?>>twohundred+</option> <option value="1"<?php if($_POST[instance][6] == "4") echo "selected=\"selected\"";?>>twotwenty+</option> <option value="1"<?php if($_POST[instance][6] == "5") echo "selected=\"selected\"";?>>twoeight+</option> <option value="1"<?php if($_POST[instance][6] == "6") echo "selected=\"selected\"";?>>twothirty+</option> </select> </td> <td><select name="instance[]"> <option value="0"<?php if($_POST[instance][7] == "0") echo "selected=\"selected\"";?>>f</option> <option value="1"<?php if($_POST[instance][7] == "1") echo "selected=\"selected\"";?>>t</option> </select> </td> <td><select name="instance[]"> <option value="0"<?php if($_POST[instance][8] == "0") echo "selected=\"selected\"";?>>Hyp</option> <option value="1"<?php if($_POST[instance][8] == "1") echo "selected=\"selected\"";?>>Normal</option> </select> </td> <td><select name="instance[]"> <option value="0"<?php if($_POST[instance][9] == "0") echo "selected=\"selected\"";?>>onethirty+</option> <option value="1"<?php if($_POST[instance][9] == "1") echo "selected=\"selected\"";?>>oneforty+</option> <option value="0"<?php if($_POST[instance][9] == "2") echo "selected=\"selected\"";?>>onefifty+</option> <option value="0"<?php if($_POST[instance][9] == "3") echo "selected=\"selected\"";?>>onesixty+</option> <option value="0"<?php if($_POST[instance][9] == "4") echo "selected=\"selected\"";?>>oneseventy+</option> <option value="0"<?php if($_POST[instance][9] == "5") echo "selected=\"selected\"";?>>oneeighty+</option> <option value="0"<?php if($_POST[instance][9] == "6") echo "selected=\"selected\"";?>>onetwenty+</option> <option value="0"<?php if($_POST[instance][9] == "7") echo "selected=\"selected\"";?>>onehundred+</option> </select> </td> <td><select name="instance[]"> <option value="0"<?php if($_POST[instance][10] == "0") echo "selected=\"selected\"";?>>f</option> <option value="1"<?php if($_POST[instance][10] == "1") echo "selected=\"selected\"";?>>t</option> </select> </td> <td><select name="instance[]"> <option value="0"<?php if($_POST[instance][11] == "0") echo "selected=\"selected\"";?>>Falt</option> <option value="1"<?php if($_POST[instance][11] == "1") echo "selected=\"selected\"";?>>Up</option> <option value="1"<?php if($_POST[instance][11] == "2") echo "selected=\"selected\"";?>>Down</option> </select> </td> <td><select name="instance[]"> <option value="0"<?php if($_POST[instance][12] == "0") echo "selected=\"selected\"";?>>Rev</option> <option value="1"<?php if($_POST[instance][12] == "1") echo "selected=\"selected\"";?>>Normal</option> <option value="1"<?php if($_POST[instance][12] == "2") echo "selected=\"selected\"";?>>Fix</option> </select> </td> <td<?php if($diagnosis) { ?> class="selected"<?php } ?>><?=$diagnosis?></td> <td><input type="submit" name="diagnose" value="Diagnose" /></td> </form> </tr> </table> <p> <a href="<?=$_SERVER[php_SELF]?>?source">View Page Source</a> </p> <?php } ?> <p> Back to <a href="index.php">Data Mining</a> </p> <script src="http://www.google-analytics.com/urchin.js" type="text/javascript"> </script> <script type="text/javascript"> _uacct = "UA-1032885-1"; urchinTracker(); </script> </body> </html> is this code correct, i really need help with connecting the database Quote Link to comment https://forums.phpfreaks.com/topic/216410-code-correction-and-connection-to-database/ Share on other sites More sharing options...
Maq Posted October 20, 2010 Share Posted October 20, 2010 What exactly is wrong? Error messages? What part do you need help with specifically? Try turning error reporting on. Quote Link to comment https://forums.phpfreaks.com/topic/216410-code-correction-and-connection-to-database/#findComment-1124621 Share on other sites More sharing options...
xxreenaxx1 Posted October 20, 2010 Author Share Posted October 20, 2010 Well it says establishing connection with database.. error on line 18 $conn = pg_Connect ("port=5432 dbname=my-database user=nobody"); I am thinking so I have to select the table as well, may be thats the fault Quote Link to comment https://forums.phpfreaks.com/topic/216410-code-correction-and-connection-to-database/#findComment-1124624 Share on other sites More sharing options...
Maq Posted October 20, 2010 Share Posted October 20, 2010 Well it says establishing connection with database.. error on line 18 $conn = pg_Connect ("port=5432 dbname=my-database user=nobody"); I am thinking so I have to select the table as well, may be thats the fault What's the error say? Sorry, I'm not familiar with pg_connect(). Are you sure you have the correct credentials? Quote Link to comment https://forums.phpfreaks.com/topic/216410-code-correction-and-connection-to-database/#findComment-1124633 Share on other sites More sharing options...
jcbones Posted October 21, 2010 Share Posted October 21, 2010 You may have to specify the host. Quote Link to comment https://forums.phpfreaks.com/topic/216410-code-correction-and-connection-to-database/#findComment-1124723 Share on other sites More sharing options...
xxreenaxx1 Posted October 21, 2010 Author Share Posted October 21, 2010 Error states the connection to the database is failed. And what host? Quote Link to comment https://forums.phpfreaks.com/topic/216410-code-correction-and-connection-to-database/#findComment-1124941 Share on other sites More sharing options...
Maq Posted October 21, 2010 Share Posted October 21, 2010 Error states the connection to the database is failed. And what host? That means that this line is most likely the cause: $conn = pg_Connect ("port=5432 dbname=my-database user=nobody"); which most likely means that your credentials aren't correct. Can you check them in any other way to be sure? (command line, phphmyadmin etc...) Quote Link to comment https://forums.phpfreaks.com/topic/216410-code-correction-and-connection-to-database/#findComment-1124964 Share on other sites More sharing options...
xxreenaxx1 Posted October 21, 2010 Author Share Posted October 21, 2010 Ohh I see, I am not sure if I can check that. But Ill ask the teacher for that, apart from that is my code right. It suppose to get the details and display them. When a user /patient clicks on these details it should give out a diagnose e.g if the patient is Sick, then it would say Sick Quote Link to comment https://forums.phpfreaks.com/topic/216410-code-correction-and-connection-to-database/#findComment-1124969 Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.