Sorry, doesn't work either. http://compcanlit.usherbrooke.ca/new1/db/index.php?ausenquiry=e does not contain those that start with é: http://compcanlit.usherbrooke.ca/new1/db/index.php?ausenquiry=é
function usort_callback($a, $b) { $a = str_replace(array('à', 'é'), array('a', 'e'), strtolower($a)); $b = str_replace(array('à', 'é'), array('a', 'e'), strtolower($b)); return (strcmp($a, $b)); } usort($authors, 'usort_callback'); var_dump($authors); I'll leave var_dump in there for verification. <?php if(!$ausenquiry) $ausenquiry ="a"; echo "<tr><td> Note: A star, \"*\", indicates that the author uses a pseudonym.<br>Noter : Une étoile, \"*\", indique que cet auteur est connu par un nom de plume. <table border=\"0\" cellspacing=\"0\" cellpadding=\"5\">\n"; ###################################################### $myconnection = mysql_connect($server,$user,$pass); mysql_select_db($db,$myconnection); $news = mysql_query("select id,AUS from $table"); ###################################################### $authors = array(); $author_list = array(); while ($mydata = mysql_fetch_object($news)) { $mydata->AUS = str_replace(" ;", ";", $mydata->AUS); $mydata->AUS = str_replace("; ", ";", $mydata->AUS); $tempauthors = explode(";", $mydata->AUS); foreach ($tempauthors as $singleauthor) { if ($singleauthor <> "") { array_push($authors, $singleauthor); $author_list[$singleauthor][] = $mydata->id; // use an associative array... } } } #sort($authors); #usort($authors, create_function('$a,$b','return strcasecmp($a,$b);')); #usort($authors, create_function('$a,$b',' # $a = str_replace(array('é', 'à'), array('e', 'a'), $a); # $b = str_replace(array('é', 'à'), array('e', 'a'), $b); # return strcasecmp($a,$b);')); #$first = array('à', 'é', 'À', 'É'); #$second = array('a', 'e', 'A', 'E'); # #usort($authors, create_function('$a,$b',' # $a = str_replace($first, $second, $a); # $b = str_replace($first, $second, $b); # return strcasecmp($a,$b);')); function usort_callback($a, $b) { $a = str_replace(array('à', 'é'), array('a', 'e'), strtolower($a)); $b = str_replace(array('à', 'é'), array('a', 'e'), strtolower($b)); return (strcmp($a, $b)); } usort($authors, 'usort_callback'); var_dump($authors); foreach (array_count_values ($authors) as $author=>$count) { if((strtolower(substr($author, 0, 1)) == $ausenquiry)) { echo "<tr bgcolor=\"#D3DCE3\">"; echo "<th align=\"left\" colspan=\"2\"><a href=\"".$SCRIPT_NAME."?searchenquiry=".urlencode($author)."\">".$author."</a> <small>[<--Search Entire Database]</small></th>"; echo "<th align=\"right\" width=\"5%\" nowrap>(".$count." "; if($count > 1) {echo "records found/trouvés)";} else{echo "record found/trouvé)";} echo"</th></tr>\n"; echo "<tr bgcolor=\"#F5F5F5\"><td> </td>"; echo "<td align=\"left\">"; $temp = ""; foreach ($author_list[$author] as $ausid) { $temp .= "<a target=\"printwindow\" href=\"print.php?id=".urlencode($ausid)."\">".$ausid."</a>, "; } $temp = substr("$temp", 0, -2); echo "$temp</td>"; echo "<td> </td>"; echo "</tr>\n"; } } mysql_close($myconnection); ###################################################### echo "</table> </td> </tr>\n"; ?> -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php