ФорумПрограммированиеPHP для идиотов → PHP функции

PHP функции

  • .snif

    Сообщения: ? Репутация: N Группа: Кто попало

    Spritz 12 октября 2010 г. 10:55

    Всем привет, есть код:

    <?php
    function connect ($host, $user, $pass, $db) {
    $link_connect = @mysql_connect($host, $user, $pass);
    $link_select = @mysql_select_db($db, $link_connect);
    if (!$link_connect) {
    @header(&quot;Location: blank.php?m=1&quot;);
    }
    else
    {
    if (!$link_select) {
    @header(&quot;Location: blank.php?m=2&quot;);
    }
    }
    }
    function query ($query) {
    $link_query = @mysql_query($query);
    if (!$link_query) {
    return false;
    }
    else
    {
    return;
    }
    }
    connect(&quot;localhost&quot;, &quot;3&quot;, &quot;3&quot;, &quot;3&quot;);
    $sql = query(&quot;SELECT * FROM `url`&quot;);
    while ($row = mysql_num_rows($sql)) {
    echo $row[1];
    }
    ?>

    собственно не работает (не выводит ячейки из бд), т.к. необходимо что-бы в случае успешного выполнения запроса в бд функция возвращала результат, но я не знаю как это реализовать. Рассчитываю на вашу помощь. Заранее благодарен
  • Абырвалг

    Сообщения: 6477 Репутация: N Группа: Джедаи
  • OFF

    Сообщения: ? Репутация: N Группа: Адекваты

    Spritz 12 октября 2010 г. 11:01, спустя 1 минуту 43 секунды

    Может стоит &quot;@&quot; поубирать? Хотя бы на время отладки.
  • .snif

    Сообщения: ? Репутация: N Группа: Кто попало

    Spritz 12 октября 2010 г. 11:13, спустя 12 минут 5 секунд


    http://ua2.php.net/manual/en/functions.returning-values.php

    то-есть фактический получается, код типа:

    function query ($query) {
    $link_query = @mysql_query($query);
    if (!$link_query) {
    return false;
    }
    else
    {
    return $link_query;
    }
    }

    однако всё-равно не работает)
  • Абырвалг

    Сообщения: 6477 Репутация: N Группа: Джедаи

    Spritz 12 октября 2010 г. 11:23, спустя 9 минут 52 секунды

    сначала делаем коннект
    потом делаем запрос {+++70+++} а, ты так и делаешь, просто отступы такие, что не понять
  • .snif

    Сообщения: ? Репутация: N Группа: Кто попало

    Spritz 12 октября 2010 г. 11:24, спустя 48 секунд


    сначала делаем коннект
    потом делаем запрос {+++70+++} а, ты так и делаешь, просто отступы такие, что не понять

    да конет сделан, это просто кусок кода, вот весь:

    <?php
    function connect ($host, $user, $pass, $db) {
    $link_connect = @mysql_connect($host, $user, $pass);
    $link_select = @mysql_select_db($db, $link_connect);
    if (!$link_connect) {
    @header(&quot;Location: blank.php?m=1&quot;);
    }
    else
    {
    if (!$link_select) {
    @header(&quot;Location: blank.php?m=2&quot;);
    }
    }
    }
    function query ($query) {
    $link_query = mysql_query($query);
    if (!$link_query) {
    return false;
    }
    else
    {
    return $link_query;
    }
    }
    connect(&quot;localhost&quot;, &quot;3&quot;, &quot;3&quot;, &quot;3&quot;);
    $sql = @query(&quot;SELECT * FROM `url`&quot;);
    while ($row = mysql_num_rows($sql)) {
    echo $row[2];
    }
    ?>
  • Абырвалг

    Сообщения: 6477 Репутация: N Группа: Джедаи

    Spritz 12 октября 2010 г. 11:36, спустя 12 минут

    mysql_num_rows возвращает int а не массив.

    var_dump(mysql_num_rows($sql));
  • .snif

    Сообщения: ? Репутация: N Группа: Кто попало

    Spritz 12 октября 2010 г. 11:39, спустя 2 минуты 50 секунд


    mysql_num_rows возвращает int а не массив.

    упс, перепутал с mysql_fetch_array. Огромное спасибо за помощ.
  • adw0rd

    Сообщения: 22902 Репутация: N Группа: в ухо

    Spritz 12 октября 2010 г. 15:57, спустя 4 часа 18 минут 15 секунд

    отличное название темы, всем бы такую фантазию
    adw/0

Пожалуйста, авторизуйтесь, чтобы написать комментарий!