prosty i zaawansowany recordset w dreamweaver - dw
Teraz nauczymy się jak za pomocą Dreamweavera tworzymy recordset (simple). Prosty bo ma limity: możemy użyć tylko jednej tabeli, filtr jest dla jednej kolumny i sortowanie też tylko dla jednej kolumny. Po stworzniu nowej strony PHP lub ColdFusion klikamy na BINDINGS. Musimy mieć także ustawione parametry serwera. Server model dla PHP to PHP MySql należy pamiętać że dla URL prefix podajemy pełną nazwe adresu np: http://php-mysql-kurs.rady.biz/ inaczej podczas testu wyskoczy nam: HTTP code 404, file not found: 
1) there is no testing server running on the server machine.
2) the testing server specified for this site does not map to the _mmServerScripts/MMHTTPDB.php URL. Verify that the URL prefix maps to the root of the site.
OK, po kliknięciu na + klikamy na Recordset (Query) pojawi nam się tabelka 'Recordset' nazwę możemy dać jej jaką tylko chcemy, możliwość wyboru baz pojawi nam się automatycznie, 'table' pozwala wybrać tabelę, 'columns' wybór na wszystkie lub trzymając ctrl myszką klikamy na tylko nam potrzebne przy opcji 'selected' potem wybieramy filtr i na końcu sortowanie względem jednej wybranej kolumny rosnąco lub malejąco. Jeżeli posiadasz bazę do tych lekcji nasze ustawienie to: wybór kolumn dla tytuł, cena, informacje i data_publikacji dla tabeli 'tytuly'.
Jeżeli wszystko wykonałeś poprawnie w panelu BIndings pojawi się nowy 'recordset' Jeżeli nie używasz DW oto kod:
if (!function_exists("GetSQLValueString")) {
function GetSQLValueString($theValue, $theType, $theDefinedValue = "", $theNotDefinedValue = "")
{
if (PHP_VERSION < 6) {
$theValue = get_magic_quotes_gpc() ? stripslashes($theValue) : $theValue;
}
$theValue = function_exists("mysql_real_escape_string") ? mysql_real_escape_string($theValue) : mysql_escape_string($theValue);
switch ($theType) {
case "text":
$theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL";
break;
case "long":
case "int":
$theValue = ($theValue != "") ? intval($theValue) : "NULL";
break;
case "double":
$theValue = ($theValue != "") ? doubleval($theValue) : "NULL";
break;
case "date":
$theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL";
break;
case "defined":
$theValue = ($theValue != "") ? $theDefinedValue : $theNotDefinedValue;
break;
}
return $theValue;
}
}
mysql_select_db($database_stronaPHPiMYSQL, $stronaPHPiMYSQL);
$query_prostyREcordset = "SELECT tytul, cena, informacje, data_publikacji FROM tytuly";
$prostyREcordset = mysql_query($query_prostyREcordset, $stronaPHPiMYSQL) or die(mysql_error());
$row_prostyREcordset = mysql_fetch_assoc($prostyREcordset);
$totalRows_prostyREcordset = mysql_num_rows($prostyREcordset);
Jeżeli chcemy połączyć tabele, filtrować i sortować więcej niż jedną kolumnę oto jak stworzyć 'advanced recordset':
wszystkie kroki są takie same do momentu kliknięcia na
'recordset(Query)' gdzie wybieramy opcje advanced...
Bardzo ważne - 'WHERE' służy do poprawnego połączenia kolumn, bez tej funkcji otrzymalibyśmy wszystkie możliwe kombinacje z wybranych kolumn.
