<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
	<title type="html"><![CDATA[Форум PHP-MyAdmin.RU &mdash; php не работает код из учебника :(]]></title>
	<link rel="self" href="https://forum.php-myadmin.ru/extern.php?action=feed&amp;tid=2097&amp;type=atom" />
	<updated>2011-02-16T19:01:25Z</updated>
	<generator>PunBB</generator>
	<id>https://forum.php-myadmin.ru/viewtopic.php?id=2097</id>
		<entry>
			<title type="html"><![CDATA[Re: php не работает код из учебника :(]]></title>
			<link rel="alternate" href="https://forum.php-myadmin.ru/viewtopic.php?pid=15065#p15065" />
			<content type="html"><![CDATA[<p><img src="https://forum.php-myadmin.ru/img/smilies/smile.png" width="15" height="15" alt="smile" /> Спс! Заработало!<br />Щас напишу код, чтоб можно было редактировать данные, а потом буду разбираться с кодировкой <img src="https://forum.php-myadmin.ru/img/smilies/smile.png" width="15" height="15" alt="smile" /></p>]]></content>
			<author>
				<name><![CDATA[Ketsyki]]></name>
				<uri>https://forum.php-myadmin.ru/profile.php?id=3147</uri>
			</author>
			<updated>2011-02-16T19:01:25Z</updated>
			<id>https://forum.php-myadmin.ru/viewtopic.php?pid=15065#p15065</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: php не работает код из учебника :(]]></title>
			<link rel="alternate" href="https://forum.php-myadmin.ru/viewtopic.php?pid=15060#p15060" />
			<content type="html"><![CDATA[<p>Вы вызываете<br />db_connect($default_dbname);<br />В переменной $default_dbname лежит имя БД.<br />Выполняется функция db_connect($dbname=&#039;&#039;) и теперь значение переменной $default_dbname копируется в $dbname, как параметр функции. Теперь имя БД будет лежать в переменной $dbname.<br />Дальше вы проверяете<br />if(empty($dbname) - вернет false, в переменной имя БД<br />&amp;&amp; !mysql_select_db($default_dbname) - это вообще не логично<br />Сделайте проще.<br />if(!mysql_select_db($dbname)) { - Этого вполне достаточно.</p>]]></content>
			<author>
				<name><![CDATA[Hanut]]></name>
				<uri>https://forum.php-myadmin.ru/profile.php?id=181</uri>
			</author>
			<updated>2011-02-16T18:47:47Z</updated>
			<id>https://forum.php-myadmin.ru/viewtopic.php?pid=15060#p15060</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: php не работает код из учебника :(]]></title>
			<link rel="alternate" href="https://forum.php-myadmin.ru/viewtopic.php?pid=15054#p15054" />
			<content type="html"><![CDATA[<p>Что-то не понял... Я же вызываю db_connect($dbname=&#039;&#039;), а не db_connect($default_dbname).</p>]]></content>
			<author>
				<name><![CDATA[Ketsyki]]></name>
				<uri>https://forum.php-myadmin.ru/profile.php?id=3147</uri>
			</author>
			<updated>2011-02-16T17:27:30Z</updated>
			<id>https://forum.php-myadmin.ru/viewtopic.php?pid=15054#p15054</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: php не работает код из учебника :(]]></title>
			<link rel="alternate" href="https://forum.php-myadmin.ru/viewtopic.php?pid=15051#p15051" />
			<content type="html"><![CDATA[<p>Вызвали функцию соединения с БД<br />db_connect($default_dbname);<br />В переменной $default_dbname имя этой самой базы данных, но в функции db_connect() идет строка:<br /></p><div class="codebox"><pre><code>if(empty($dbname) &amp;&amp; !mysql_select_db($default_dbname)) {</code></pre></div><p>Здесь и есть ошибка.</p>]]></content>
			<author>
				<name><![CDATA[Hanut]]></name>
				<uri>https://forum.php-myadmin.ru/profile.php?id=181</uri>
			</author>
			<updated>2011-02-16T17:08:41Z</updated>
			<id>https://forum.php-myadmin.ru/viewtopic.php?pid=15051#p15051</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: php не работает код из учебника :(]]></title>
			<link rel="alternate" href="https://forum.php-myadmin.ru/viewtopic.php?pid=15046#p15046" />
			<content type="html"><![CDATA[<p>Точно <img src="https://forum.php-myadmin.ru/img/smilies/smile.png" width="15" height="15" alt="smile" /> Спс.</p><p>Только что-то опять не работает. В учебнике написано, что если выскакивает окно с таким текстом: 1046: No Database Selected, то это значит, что переменная $default_dbname пуста. Но у меня же она написана. О_О</p><p>Код этот используется для вывода данных из бд. Вот основная часть кода, на всякий случай:<br /></p><div class="codebox"><pre><code>&lt;?php
include &quot;./common_db.inc&quot;;
function list_records()
{
global $default_dbname, $user_tablename;
global $records_per_page;
$PHP_SELF = &quot;userviewer.php&quot;;
$link_id = db_connect($default_dbname);
if(!$link_id) error_message(sql_error());
$query = &quot;SELECT count(*) FROM $user_tablename&quot;;
$result = mysql_query($query);
if(!$result) error_message(sql_error());
$query_data = mysql_fetch_row($result);
$total_num_user = $query_data[0];
if(!$total_num_user) error_message(&#039;Нет зарегистрированных пользователей!&#039;);
if(empty($_GET[&#039;next_page&#039;])) {
$_GET[&#039;next_page&#039;] = 0;
}
$cur_page = $_GET[&#039;next_page&#039;];
$page_num = $cur_page + 1;
$record = $cur_page * $records_per_page + 5;
$total_num_page = $last_page_num = ceil($total_num_user/$records_per_page);
html_header();
echo &quot;&lt;CENTER&gt;&lt;H3&gt;В базе найдено $total_num_user пользователей. Страница
$page_num из $last_page_num.&lt;/H3&gt;&lt;/CENTER&gt;\n&quot;;
if (empty($_GET[&#039;order_by&#039;])){
$_GET[&#039;order_by&#039;] = &#039;userid&#039;;
} $order_by = $_GET[&#039;order_by&#039;];
if (empty($_GET[&#039;sort_order&#039;])) {
$_GET[&#039;sort_order&#039;] = &#039;ASC&#039;;
$sort_order = &#039;ASC&#039;;
}
if ($_GET[&#039;sort_order&#039;] == &#039;ASC&#039;) {
$sort_order = &#039;DESC&#039;;
$org_sort_order = &#039;ASC&#039;;
}
else {
$sort_order = &#039;ASC&#039;;
$org_sort_order = &#039;DESC&#039;;
}
$limit_str = &quot;LIMIT &quot;. $cur_page * $records_per_page . &quot;, $record&quot;;
$query = &quot;SELECT usernumber, userid, username FROM $user_tablename ORDER BY
$_GET[order_by] $_GET[sort_order]
$limit_str &quot;;
$result = mysql_query($query); if(!$result){
error_message(sql_error());
}
?&gt;

&lt;DIV ALIGN=&quot;CENTER&quot;&gt;
&lt;TABLE BORDER=&quot;1&quot; WIDTH=&quot;90%&quot; CELLPADDING=&quot;2&quot;&gt;
&lt;TR&gt;
&lt;TH WIDTH=&quot;25%&quot; NOWRAP&gt;
&lt;A HREF=&quot;&lt;?php echo &quot;$PHP_SELF?action=list_records&amp;
sort_order=$sort_order&amp;
order_by=usernumber&quot;; ?&gt;&quot;&gt;
Номер пользователя
&lt;/A&gt;
&lt;/TH&gt;
&lt;TH WIDTH=&quot;25%&quot; NOWRAP&gt;
&lt;A HREF=&quot;&lt;?php echo &quot;$PHP_SELF?action=list_records&amp;
sort_order=$sort_order&amp;
order_by=userid&quot;; ?&gt;&quot;&gt;
Идентификатор пользователя
&lt;/A&gt;
&lt;/TH&gt;
&lt;TH WIDTH=&quot;25%&quot; NOWRAP&gt;
&lt;A HREF=&quot;&lt;?php echo &quot;$PHP_SELF?action=list_records&amp;
sort_order=$sort_order&amp;
order_by=username&quot;; ?&gt;&quot;&gt;
Имя пользователя
&lt;/A&gt;
&lt;/TH&gt;
&lt;TH WIDTH=&quot;25%&quot; NOWRAP&gt;Действие&lt;/TH&gt;
&lt;/TR&gt;
&lt;?php
while($query_data = mysql_fetch_array($result)) {
$usernumber = $query_data[&quot;usernumber&quot;];
$userid = $query_data[&quot;userid&quot;];
$username = $query_data[&quot;username&quot;];
echo &quot;&lt;TR&gt;\n&quot;;
echo &quot;&lt;TD WIDTH=\&quot;25%\&quot; ALIGN=\&quot;CENTER\&quot;&gt;$usernumber&lt;/TD&gt;\n&quot;;
echo &quot;&lt;TD WIDTH=\&quot;25%\&quot; ALIGN=\&quot;CENTER\&quot;&gt;$userid&lt;/TD&gt;\n&quot;;
echo &quot;&lt;TD WIDTH=\&quot;25%\&quot; ALIGN=\&quot;CENTER\&quot;&gt;$username&lt;/TD&gt;\n&quot;;
echo &quot;&lt;TD WIDTH=\&quot;25%\&quot; ALIGN=\&quot;CENTER\&quot;&gt;
&lt;A HREF=\&quot;javascript:open_window(&#039;$PHP_SELF?action=view_record&amp;
userid=$userid&#039;);\&quot;&gt;Просмотреть запись&lt;/A&gt;&lt;/TD&gt;\n&quot;;
echo &quot;&lt;/TR&gt;\n&quot;;
}
?&gt;
&lt;/TABLE&gt;
&lt;/DIV&gt;
&lt;?php
echo &quot;&lt;BR&gt;\n&quot;;
echo &quot;&lt;STRONG&gt;&lt;CENTER&gt;&quot;;
if($page_num &gt; 1) {
$prev_page = $cur_page - 1;
echo &quot;&lt;A HREF=\&quot;$PHP_SELF?action=list_records&amp;
ort_order=$org_sort_order&amp;order_by=$order_by&amp;next_page=0\&quot;&gt;[В начало]
&lt;/A&gt;&quot;;
echo &quot;&lt;A HREF=\&quot;$PHP_SELF?action=list_records&amp;sort_order=$org_sort_order
&amp;order_by=$order_by&amp;next_page=$prev_page\&quot;&gt;[Предыдущая]&lt;/A&gt; &quot;;
if($page_num &lt; $total_num_page) {
$next_page = $cur_page + 1;
$last_page = $total_num_page - 1;
echo &quot;&lt;A HREF=\&quot;$PHP_SELF?action=list_records&amp;sort_order=$org_sort_order
&amp;order_by=$order_by&amp;next_page=$next_page\&quot;&gt;[Следующая]&lt;/A&gt; &quot;;
echo &quot;&lt;A HREF=\&quot;$PHP_SELF?action=list_records&amp;sort_order=$org_sort_order&amp;
order_by=$order_by&amp;next_page=$last_page\&quot;&gt;[В конец]&lt;/A&gt;&quot;;
}
}
html_footer();
}
function view_record() {
global $default_dbname, $user_tablename, $access_log_tablename;
$PHP_SELF = $_SERVER[&#039;PHP_SELF&#039;];
$userid = $_GET[&#039;userid&#039;];
if(empty($userid)){
error_message(&#039;Выберите пользователя!&#039;);
}
$link_id = db_connect($default_dbname);
if(!$link_id){
error_message(sql_error());
}
$query = &quot;SELECT * FROM $user_tablename WHERE userid = &#039;$userid&#039;&quot;;
$result = mysql_query($query);
if(!$result){
error_message(sql_error());
}
$query_data = mysql_fetch_array($result);
$usernumber = $query_data[&quot;usernumber&quot;];
$userid = $query_data[&quot;userid&quot;];
$username = $query_data[&quot;username&quot;];
$userposition = $query_data[&quot;userposition&quot;];
$useremail = $query_data[&quot;useremail&quot;];
$userprofile = $query_data[&quot;userprofile&quot;];
html_header();
echo &quot;&lt;CENTER&gt;&lt;H3&gt;
Запись для пользователя №.$usernumber - $userid($username)
&lt;/H3&gt;&lt;/CENTER&gt;&quot;;
?&gt;
&lt;DIV ALIGN=&quot;CENTER&quot;&gt;
&lt;TABLE BORDER=&quot;1&quot; WIDTH=&quot;90%&quot; CELLPADDING=&quot;2&quot;&gt;
&lt;TR&gt;
&lt;TH WIDTH=&quot;40%&quot;&gt;position&lt;/TH&gt;
&lt;TD WIDTH=&quot;60%&quot;&gt;&lt;?php echo $userposition ?&gt;&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TH WIDTH=&quot;40%&quot;&gt;Email&lt;/TH&gt;
&lt;TD WIDTH=&quot;60%&quot;&gt;&lt;?php echo &quot;&lt;A
HREF=\&quot;mailto:$useremail\&quot;&gt;$useremail&lt;/A&gt;&quot;
; ?&gt;&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TH WIDTH=&quot;40%&quot;&gt;Профиль&lt;/TH&gt;
&lt;TD WIDTH=&quot;60%&quot;&gt;&lt;?php echo $userprofile ?&gt;&lt;/TD&gt;
&lt;/TR&gt;
&lt;/TABLE&gt;
&lt;/DIV&gt;
&lt;?php
echo &quot;&lt;HR SIZE=\&quot;2\&quot; WIDTH=\&quot;90%\&quot;&gt;\n&quot;;
$query = &quot;SELECT page, visitcount, accessdate FROM $access_log_tablename
WHERE userid = &#039;$userid&#039;&quot;;
$result = mysql_query($query);
if(!$result){
error_message(sql_error());
}
if(!mysql_num_rows($result)){
echo &quot;&lt;CENTER&gt;Для пользователя $userid ($username) нет записей в журнале
посещений.&lt;/CENTER&gt;&quot;;
} else {
echo &quot;&lt;CENTER&gt;Записи журнала посещений для пользователя $userid
($username).&lt;/CENTER&gt;&quot;;
?&gt;
&lt;DIV ALIGN=&quot;CENTER&quot;&gt;
&lt;TABLE BORDER=&quot;1&quot; WIDTH=&quot;90%&quot; CELLPADDING=&quot;2&quot;&gt;
&lt;TR&gt;
&lt;TH WIDTH=&quot;40%&quot; NOWRAP&gt;Web-страница&lt;/TH&gt;
&lt;TH WIDTH=&quot;20%&quot; NOWRAP&gt;Количество посещений&lt;/TH&gt;
&lt;TH WIDTH=&quot;40%&quot; NOWRAP&gt;Время последнего посещения&lt;/TH&gt;
&lt;/TR&gt;
&lt;?php while($query_data = mysql_fetch_array($result)) {
$page = $query_data[&quot;page&quot;];
$visitcount = $query_data[&quot;visitcount&quot;];
$accessdate = substr($query_data[&quot;accessdate&quot;], 0, 4) . &#039;-&#039; .
substr($query_data[&quot;accessdate&quot;], 4, 2) . &#039;-&#039; .
substr($query_data[&quot;accessdate&quot;], 6, 2) . &#039; &#039; .
substr($query_data[&quot;accessdate&quot;], 8, 2) . &#039;:&#039; .
substr($query_data[&quot;accessdate&quot;], 10, 2) . &#039;:&#039; .
substr($query_data[&quot;accessdate&quot;], 12, 2);
echo &quot;&lt;TR&gt;\n&quot;;
echo &quot;&lt;TD WIDTH=\&quot;40%\&quot;&gt;$page&lt;/TD&gt;\n&quot;;
echo &quot;&lt;TD WIDTH=\&quot;20%\&quot; ALIGN=\&quot;CENTER\&quot;&gt;$visitcount&lt;/TD&gt;\n&quot;;
echo &quot;&lt;TD WIDTH=\&quot;40%\&quot; ALIGN=\&quot;CENTER\&quot;&gt;$accessdate&lt;/TD&gt;\n&quot;;
echo &quot;&lt;/TR&gt;\n&quot;;
}
?&gt;
&lt;/TR&gt;
&lt;/TABLE&gt;
&lt;/DIV&gt;
&lt;?php
}
html_footer();
}
if (empty($_GET[&#039;action&#039;])){
$_GET[&#039;action&#039;] = &#039;list_records&#039;;
}
switch($_GET[&#039;action&#039;]) {
case &quot;view_record&quot;:
view_record();
break;
default:
list_records();
break;
}</code></pre></div>]]></content>
			<author>
				<name><![CDATA[Ketsyki]]></name>
				<uri>https://forum.php-myadmin.ru/profile.php?id=3147</uri>
			</author>
			<updated>2011-02-16T16:54:25Z</updated>
			<id>https://forum.php-myadmin.ru/viewtopic.php?pid=15046#p15046</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: php не работает код из учебника :(]]></title>
			<link rel="alternate" href="https://forum.php-myadmin.ru/viewtopic.php?pid=15044#p15044" />
			<content type="html"><![CDATA[<p>В 69 строке лишний пробел. Должно быть так:</p><div class="codebox"><pre><code>echo &quot;&lt;SCRIPT&gt;alert(\&quot;Error: $msg\&quot;);history.go(-1)&lt;/SCRIPT&gt;&quot;;</code></pre></div>]]></content>
			<author>
				<name><![CDATA[Hanut]]></name>
				<uri>https://forum.php-myadmin.ru/profile.php?id=181</uri>
			</author>
			<updated>2011-02-16T16:31:50Z</updated>
			<id>https://forum.php-myadmin.ru/viewtopic.php?pid=15044#p15044</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[php не работает код из учебника :(]]></title>
			<link rel="alternate" href="https://forum.php-myadmin.ru/viewtopic.php?pid=15041#p15041" />
			<content type="html"><![CDATA[<p>Есть у меня в учебнике код&nbsp; один, но, что-то он работать не хочет...<br /></p><div class="codebox"><pre><code>&lt;?php
$dbhost = &#039;localhost&#039;;
$dbusername = &#039;myusername&#039;;
$dbuserpassword = &#039;mypassword&#039;;
$default_dbname = &#039;sample_db&#039;;
$records_per_page = 5;
$user_tablename = &#039;user&#039;;
$access_log_tablename = &#039;access_log&#039;;
$MYSQL_ERRNO = &quot;;
$MYSQL_ERROR = &quot;;
$new_win_width = 600;
$new_win_height = 400;
function html_header() {
global $new_win_width, $new_win_height;
?&gt;
&lt;HTML&gt;
&lt;HEAD&gt;
&lt;SCRIPT LANGUAGE=&quot;JavaScript&quot; TYPE=&quot;text/javascript&quot;&gt;
&lt;!--
function open_window(url) {
var NEW_WIN = null;
NEW_WIN = window.open (&quot;&quot;, &quot;RecordViewer&quot;,
&quot;toolbar=no,width=&quot;+
&lt;?php echo $new_win_width ?&gt;+
&quot;,height=&quot;+&lt;?php echo $new_win_height?&gt;+
&quot;,directories=no,status=no&quot;+
&quot;,scrollbars=yes,resize=no,menubar=no&quot;);
NEW_WIN.location.href = url;
}
//--&gt;
&lt;/SCRIPT&gt;
&lt;TITLE&gt;Сценарий просмотра базы данных&lt;/TITLE&gt;
&lt;/HEAD&gt;
&lt;BODY&gt;
&lt;?php
}
function html_footer() {
?&gt;
&lt;/BODY&gt;
&lt;/HTML&gt;
&lt;?php
}
function db_connect($dbname=&#039;&#039;) {
global $dbhost, $dbusername, $dbuserpassword, $default_dbname;
global $MYSQL_ERRNO, $MYSQL_ERROR;
$link_id = mysql_connect($dbhost, $dbusername, $dbuserpassword);
if(!$link_id) {
$MYSQL_ERRNO = 0;
$MYSQL_ERROR = &quot;Не удалось подключиться к узлу $dbhost.&quot;;
return 0;
}
else if(empty($dbname) &amp;&amp; !mysql_select_db($default_dbname)) {
$MYSQL_ERRNO = mysql_errno();
$MYSQL_ERROR = mysql_error();
return 0;
}
else return $link_id;
}
function sql_error() {
global $MYSQL_ERRNO, $MYSQL_ERROR;
if(empty($MYSQL_ERROR)) {
$MYSQL_ERRNO = mysql_errno();
$MYSQL_ERROR = mysql_error();
}
return &quot;$MYSQL_ERRNO: $MYSQL_ERROR&quot;;
}
function error_message($msg) {
html_header();
echo &quot;&lt;SCRIPT&gt;alert(\&quot;Error: $msg\ &quot;);history.go(-1)&lt;/SCRIPT&gt;&quot;;
html_footer();
exit;
}
?&gt;</code></pre></div><p>При запуске (файл с этим кодом подключается к другой странице), выскакивает&nbsp; такая ошибка: Parse error: syntax error, unexpected &#039;)&#039;, expecting &#039;,&#039; or &#039;;&#039; in C:\Serv\xampp\htdocs\admin\common_db.inc on line 69</p><p>Это, имеется виду, что после скобки надо поставить точку с запятой? О_о</p>]]></content>
			<author>
				<name><![CDATA[Ketsyki]]></name>
				<uri>https://forum.php-myadmin.ru/profile.php?id=3147</uri>
			</author>
			<updated>2011-02-16T15:15:54Z</updated>
			<id>https://forum.php-myadmin.ru/viewtopic.php?pid=15041#p15041</id>
		</entry>
</feed>
