PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи

Страниц (1): [1]

> Найдено сообщений: 12
Exorcist13 Отправлено: 01 Апреля, 2014 - 02:25:51 • Тема: Руководство по PHPDesigner • Форум: CMS и фреймворки

Ответов: 3
Просмотров: 1967
Exorcist13 пишет:
А лично вам я бы посоветовал Sublime Text 2.

Спасибо за совет. Вчера столкнулся с тем, что дебаггер PHPDesigner не самый стабильный, бесконечные циклы его просто убивают. Часто не хочет останавливаться по ctrl+f2.

Подскажите в чем отличие NetBeans и Sublime Text 2. В двух словах, если не сложно.
И у кого более правильный и стабильный дебаггер, учитывая, что программист я пока, мягко говоря не очень сильный, это похоже будет основным условием.
Exorcist13 Отправлено: 01 Апреля, 2014 - 02:21:48 • Тема: Почему переменная получает массив?? • Форум: Вопросы новичков

Ответов: 5
Просмотров: 252
Похоже просто глюканул дебаггер PHPDesigner а. Тему можно закрыть.
Exorcist13 Отправлено: 31 Марта, 2014 - 13:57:58 • Тема: Почему переменная получает массив?? • Форум: Вопросы новичков

Ответов: 5
Просмотров: 252
Ну просто полная хрень, запустил тот же файл, $string получает строку прекрасно. Это что был за глюк?
Добавил только //var_dump($stroka);, а потом закоментировал. Это даже не смешно.
Exorcist13 Отправлено: 31 Марта, 2014 - 05:13:46 • Тема: Почему переменная получает массив?? • Форум: Вопросы новичков

Ответов: 5
Просмотров: 252
Ну это же не совсем то, я пробовал и просто 1 ставить в этой строке $stroka = $file_array[$i];
Проблема в том, что переменная не элемент массива получает, а весь массив.
Exorcist13 Отправлено: 30 Марта, 2014 - 17:06:57 • Тема: Почему переменная получает массив?? • Форум: Вопросы новичков

Ответов: 5
Просмотров: 252
$file_array = file("images\work\Pred.txt"); // Считывание файла в массив $file_array


print '<pre>';
print_r($file_array);
print '</pre>';

for($i = 0; $i < count($file_array); ++$i)
{
$stroka = $file_array[$i];
$needle = 'Raz';

$pos = strpos($stroka, $needle); //Вычисляем раздел --ВОТ ТУТ ОШИБКА!
if ($pos === false)
{
echo '<h2 align="center">'. $file_array[$i++] . '</h>'; //'<h2 align="center"> . $file_array[$i] . </h>';
}



Когда проверка строки имела вид: все более менее работало

$pos = strpos($file_array[$i],'Raz'); //Вычисляем раздел

Для отладки ввел 2 переменные $stroka и $needle

Вопрос: почему в выделенной жирным присвоении #stroka получает весь массив, а не его элемент под номером $i. Соответственно дебагер в строке выделенной курсивом ругается на то, что ожидается string а дают array.
Exorcist13 Отправлено: 29 Марта, 2014 - 17:03:25 • Тема: Руководство по PHPDesigner • Форум: CMS и фреймворки

Ответов: 3
Просмотров: 1967
Добрый день!

Потихоньку разбираюсь с php, похоже наиболее удачной IDE является PHPDesigner.
Не могу нйати по нему никакого руководства, встроенная помощь весьма невнятная, изучать научным тыком системы такого уровня дело не быстрое и весьма хлопотное. А забивать микроскопом гвозди совсем как не хочется.

Собственно ищу информацию по пользовательскому интерфейсу, возможно встроенные "Руководства помощи" на русском. И неплохо бы встроенные подсказки по функциям на русском.

Буду крайне признателен за любую помощь, спасибо.
Exorcist13 Отправлено: 09 Декабря, 2013 - 04:44:01 • Тема: И снова кодировки=) • Форум: Вопросы новичков

Ответов: 2
Просмотров: 107
Если у Вас не срабатывает функция mysqli_real_escape_string, то нужно выставить кодировку, вот так

mysqli_set_charset($link, "utf8");
return mysqli_real_escape_string($link, $var);

$link это указатель на соединение с MySQL
Exorcist13 Отправлено: 08 Декабря, 2013 - 11:08:15 • Тема: Проблемы с mysqli_real_escape_string • Форум: Вопросы новичков

Ответов: 5
Просмотров: 168
Мелкий пишет:
а не были распознаны как управляющая конструкция SQL.

Вот теперь понял принцип экранирования.

А что насчет видимости переменной?
Exorcist13 Отправлено: 08 Декабря, 2013 - 07:48:51 • Тема: Проблемы с mysqli_real_escape_string • Форум: Вопросы новичков

Ответов: 5
Просмотров: 168
function get_post($link, $var)
{
mysqli_set_charset($link, "utf8");
return mysqli_real_escape_string($link, $_POST[$var]);

}

1. Для обработки данных, которые вводят пользователи использую mysqli_real_escape_string, но она ничего не терминирует, зарядил опаснейшую строку:
's "s /n \n // / \\ \ = ==
После отработки mysqli_real_escape_string, строка не изменилась и в том же виде угодила в БД, а это вроде как грустно.

2. Переменную $link - это указатель на соединение с MySQL объявлял как Global, однако функция ее не видит, пришлось передавать аргументом, что несколько неудобно. Что за замута с глобальными переменными в PHP?
Exorcist13 Отправлено: 07 Декабря, 2013 - 16:28:08 • Тема: Не работает обращение к MYSQL из PHP • Форум: Вопросы новичков

Ответов: 5
Просмотров: 368
esterio пишет:
и поставьте это поставьте перед вызовом mysqli_fetch_assoc


Собственно это решило проблему, функция mysqli_error() вернула ошибку "No database selected", соответственно выявилось различие синтаксиса mysql_connect(Хост, Пользователь, пароль), mysqli_connect(Хост, Пользователь, Пароль, БАЗА ДАННЫХ).

esterio, AmsTaFF, dXdYdZ большое спасибо, не могу плюсануть, не хватает сообщений : )
Exorcist13 Отправлено: 05 Декабря, 2013 - 15:23:53 • Тема: Не работает обращение к MYSQL из PHP • Форум: Вопросы новичков

Ответов: 5
Просмотров: 368
<?php
require_once 'login.php';
$db_server = mysqli_connect($db_hostname, $db_username, $db_password);

if (!$db_server) die("Unable to connect to MySQL: " . mysql_error());

//mysql_select_db($db_database)
// or die("Unable to select database: " . mysql_error());

$query = "SELECT * FROM classics";
$result = mysqli_query($db_server, $query);

/* извлечение ассоциативного массива */
$row = mysqli_fetch_assoc($result);
printf ("%s (%s)\n", $row["Name"], $row["CountryCode"]);


echo $result;
if (!$result) die ("Database access failed: " . mysql_error());

echo $result;
?>

Получаем ошибку

Warning: mysqli_fetch_assoc() expects parameter 1 to be mysqli_result, boolean given in C:\web\call_base.php on line 14

Понятно что он ждет какой то указатель на результаты, но получает boolean, вот непонятно почему он $result становится типом boolean после вот этого

$query = "SELECT * FROM classics";
$result = mysqli_query($db_server, $query);
Exorcist13 Отправлено: 04 Декабря, 2013 - 15:21:13 • Тема: Не работает обращение к MYSQL из PHP • Форум: Вопросы новичков

Ответов: 5
Просмотров: 368
В книжке Робина Никсона PHP, MySQL b JavaScript для обращения к базе MySQL используются следующие функции:

<?php
require_once 'login.php';
$db_server = mysql_connect($db_hostname, $db_username, $db_password);

if (!$db_server) die("Unable to connect to MySQL: " . mysql_error());

mysql_select_db($db_database)
or die("Unable to select database: " . mysql_error());

$query = "SELECT * FROM classics";
$result = mysqli_query($db_server, $query);

if (!$result) die ("Database access failed: " . mysql_error());

echo $result;
?>

Как результат:

Deprecated: mysql_connect(): The mysql extension is deprecated and will be removed in the future: use mysqli or PDO instead in C:\web\call_base.php on line 3

Собственно вот такая ошибка имеет место.

Понятно, что данная функция устарела и не поддерживается современным MySQL, собственно вопрос вот в чем:
Неужели весь труд Никсона устарел и читать дальше его не имеет смысла, или проблема только в паре функций взаимодействия с MySQL?
Возможно стоит обратиться к другому учебнику?

Заранее благодарю за ответ, форумчане.

Страниц (1): [1]
Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB