Нужен скрипт для выполнения SQL запроса.

Тема в разделе "PHP", создана пользователем sanj, 19 окт 2008.

Статус темы:
Закрыта.
Модераторы: latteo
  1. sanj

    sanj Постоялец

    Регистр.:
    5 июл 2008
    Сообщения:
    77
    Симпатии:
    34
    Есть скрипт у меня есть, который постоянно виснет и мне приходится систематически лазить в MySQL и выполнять SQL запрос.
    Можете помочь мне сделать скрипт, который бы выполнял вмускулах следующий запрос:

    PHP:
    UPDATE `tabl1SET `check` = 'new' WHERE `tabl2` = 'checking';
    И желательно, что бы он запускался кроном, но это наверное можно каждый скрипт сроном запустить.
     
  2. Grifindore

    Grifindore

    Регистр.:
    4 сен 2007
    Сообщения:
    151
    Симпатии:
    35
    PHP:
    function SuperSqlFunction ($new,$checking
    {
        return 
    mysql_query ("UPDATE tabl1 SET check=$new WHERE tabl2=$checking");
    }
    Ну и вызываешь функцию типа

    PHP:
    $result SuperSqlFunction ($new,$checking);
    Ну а дальше можешь даже поработать с $result, он будет иметь значение TRUE если запрос к базе функцией будет выполнен или FALSE во всех остальных случаях.


    Хотя конечно из твоего вопроса не совсем понятно откуда растут ноги, но попробуй должно получиться, главное вставь это в свой скрипт правильно.

    А сроном запускать, это уже кури ман своего хостера. Обычно просто пхп файлег запускается с помощью крона и все...
     
  3. ewg777

    ewg777

    Регистр.:
    6 авг 2007
    Сообщения:
    763
    Симпатии:
    321
    mysql_query:yahoo:
     
  4. zerdek

    zerdek

    Регистр.:
    29 ноя 2007
    Сообщения:
    346
    Симпатии:
    50
    только сначала нужно зацепиться к sql-ю

    Код:
    $conn = mysql_connect("localhost", $dbUser, $dbPass) or die("Cannot connect to the database");
    mysql_select_db($dbName);
    
    $result=mysql_query ("UPDATE tabl1 SET check=$new WHERE tabl2=$checking");
    
    
     
  5. sanj

    sanj Постоялец

    Регистр.:
    5 июл 2008
    Сообщения:
    77
    Симпатии:
    34
    Не получается обновлять таблицы.

    Не обновляет файл базы после запуска.
    Я сделал файл

    PHP:
    <?php
    $conn 
    mysql_connect("localhost"$dbUser$dbPass) or die("Cannot connect to the database");
    mysql_select_db($dbName);

    $result=mysql_query ("UPDATE tabl1 SET check=$new WHERE check=$checking");
    ?>
    для запроса sql

    PHP:
    UPDATE `tabl1SET `check` = 'new' WHERE `check` = 'checking';
    Он базы не обновил - может что я не так сделал.
    P.S. Разумеется подключение к базам я вводил свои данные
     
  6. elcaste

    elcaste

    Регистр.:
    30 ноя 2007
    Сообщения:
    322
    Симпатии:
    175
    PHP:
    <?php 
    $conn 
    mysql_connect("localhost"$dbUser$dbPass) or die("Cannot connect to the database"); 
    mysql_select_db($dbName); 

    $result=mysql_query ("UPDATE tabl1 SET check='$new' WHERE check='$checking'"); 
    ?>
    Вот так нужно.
     
  7. Grifindore

    Grifindore

    Регистр.:
    4 сен 2007
    Сообщения:
    151
    Симпатии:
    35
    Я начинаю подозревать что ты запускаешь этот файл так как и написано без объявления переменных?

    У тебя переменные $new, $checking вообще где нибудь объявлены?
    Какую ошибку выдает твой скрипт?

    Выкладывай давай полный листинг скрипта, попытаемся разобраться, иначе так мы будем долго гадать....
     
  8. sanj

    sanj Постоялец

    Регистр.:
    5 июл 2008
    Сообщения:
    77
    Симпатии:
    34
    вот тот запрос что я давал - когда я его запускаю в майадмтине через SQL запрос - у меня все работает.
    Просто напросто я хочу автоматизировать этот прочесс, что бы мне не лазить в phpmyadmin и не выполнять SQL запрос. Я хочу что бы это делал отдельный скрипт, который я могу запустить либо через браузер, либо кроном.
    Вот все что мне надо.
     
  9. Deller

    Deller Создатель

    Регистр.:
    24 фев 2008
    Сообщения:
    34
    Симпатии:
    16
    Дык ты $new и $cheking Php'шные переменные обьявляешь? прежде чем пихать их в мускул нуна задать их и будет тебе счастье.:)
     
  10. elcaste

    elcaste

    Регистр.:
    30 ноя 2007
    Сообщения:
    322
    Симпатии:
    175
    Я что-то не понял, тебе вообще там переменные зачем?

    Если ты всегда в панели выполняешь точно такой всегда одинаковый запрос:
    PHP:
    UPDATE `tabl1SET `check` = 'new' WHERE `tabl2` = 'checking';
    то создавай файл:
    PHP:
    <?php  
    $conn 
    mysql_connect("localhost"$dbUser$dbPass) or die("Cannot connect to the database");  
    mysql_select_db($dbName);  

    $result=mysql_query("UPDATE tabl1 SET check='new' WHERE check='checking'");  
    ?>
    ставь его на крон с выводом в файл или запусти прямо в шелле, и если работать не будет, давай сюда лог.
     
Статус темы:
Закрыта.