Nedan finns min färdiga kod...nu bara ett problem som jag inte direkt vet hur jag ska lösa...
Enligt koden så radas alla ChordName bara upp efter det de har blivit skapade, men allra hels skulle jag se dem radade i ordningen C D E F G A B. Hur komma till detta? Har någon nå förslag?
">
<FORM METHOD="post" ACTION="<?PHP echo $PHP_SELF; ?>?body=edit#action">
Select chord:
<SELECT NAME="ChordToEdit[]">
<?PHP
// connect to database
$link = mysql_connect($host, $login, $password);
mysql_select_db($dbase,$link);
$result = mysql_query("SELECT * FROM $table",$link);
while ($myrow = mysql_fetch_array($result)) {
// do something to every column
printf("\n\t\t<OPTION>%s</OPTION>",$myrow["ChordName"]);
} // end while
echo "\n\n";
?>
</SELECT>
<INPUT TYPE="submit" VALUE="Edit chord">
<INPUT TYPE="hidden" NAME="editchord">
</FORM>
MVH, Jontto
------------------
"För att lyckas här i livet ska man verka tokig men vara vis"
-Montesquieu-
$result = mysql_query("SELECT * FROM $table order by case chordName when 'C' then 1 when 'D' then 2 when 'E' then 3 when 'F' then 4 when 'G' then 5 when 'A' then 6 when 'B' then 7 end ",$link);
Jag förutsätter att chordName bara innehåller ett tecken.
------------------ essentitia preter non sans multiplicandum
Ok, men det går att enbart sortera direkt på första bokstaven i select-satsen.
$result = mysql_query("SELECT * FROM $table order by case substring(chordName from 1 for 1) when 'C' then 1 when 'D' then 2 when 'E' then 3 when 'F' then 4 when 'G' then 5 when 'A' then 6 when 'B' then 7 end ",$link);
------------------ essentitia preter non sans multiplicandum
ahaa...finns det ett enkelt sätt att lite avancicera? Ett sätt att få dem i ordningen C Db D Eb E F Gb G Ab A Bb B ?
Fixar det nog med php, men får jag det på nåt sätt me en query oxå?
Tack, Jontto
------------------
"För att lyckas här i livet ska man verka tokig men vara vis"
-Montesquieu-
$result = mysql_query("SELECT * FROM $table order by case " .
"when substring(chordName from 1 for 2) = 'Db' then 2 " .
"when substring(chordName from 1 for 2) = 'Eb' then 4 " .
"when substring(chordName from 1 for 2) = 'Gb' then 7 " .
"when substring(chordName from 1 for 2) = 'Ab' then 9 " .
"when substring(chordName from 1 for 2) = 'Bb' then 11 " .
"when substring(chordName from 1 for 1) = 'C' then 1 " .
"when substring(chordName from 1 for 1) = 'D' then 3 " .
"when substring(chordName from 1 for 1) = 'E' then 5 " .
"when substring(chordName from 1 for 1) = 'F' then 6 " .
"when substring(chordName from 1 for 1) = 'G' then 8 " .
"when substring(chordName from 1 for 1) = 'A' then 10 " .
"when substring(chordName from 1 for 1) = 'B' then 12 end"
,$link);
------------------ essentitia preter non sans multiplicandum
134 ms totalt · 3 externa anrop · v20260731065814-full.4bcf49fe