[php] Новичкам: задаем вопросы

Discussion in 'PHP' started by _Great_, 26 May 2007.

Thread Status:
Not open for further replies.
  1. randman

    randman Members of Antichat

    Joined:
    15 May 2010
    Messages:
    1,366
    Likes Received:
    608
    Reputations:
    1,101
    Этот код рабоает:

    PHP:
    $temp fopen('link.txt''a+') or $s='1';e($s);
    fwrite($temp'1234567890''8');
    fclose ($temp);
    А этот код почему то не работает:

    PHP:
    $temp fopen('link.txt''a+') or $s='1';e($s);
    function 
    good($num) {
    $num $num."\r\n";
    fwrite($temp$num'8');
    }
    good('1234567890');

    fclose ($temp);
    :confused:
     
  2. Gifts

    Gifts Green member

    Joined:
    25 Apr 2008
    Messages:
    2,494
    Likes Received:
    807
    Reputations:
    614
    XAMEHA http://php.net/manual/en/language.variables.scope.php или гуглите "область видимости переменных в PHP"
     
    _________________________
  3. bjong

    bjong Elder - Старейшина

    Joined:
    26 Jul 2003
    Messages:
    42
    Likes Received:
    12
    Reputations:
    18
    в БД хранятся юзерагенты, в стандартном виде (Opera/9.22 (Windows NT 5.1; U; ru))
    Хотелось бы сделать статистику, и что бы в нее информация приходила в людском виде..
    т.е. Браузер Opera Опер.система Windows XP

    Нету не у кого такого скрипта?)
     
  4. SHiNiGaMi

    SHiNiGaMi Banned

    Joined:
    3 Jan 2010
    Messages:
    382
    Likes Received:
    55
    Reputations:
    15
    http://ru.wikipedia.org/wiki/User_agent
     
  5. bjong

    bjong Elder - Старейшина

    Joined:
    26 Jul 2003
    Messages:
    42
    Likes Received:
    12
    Reputations:
    18
  6. .::f-duck::.

    .::f-duck::. Member

    Joined:
    30 May 2009
    Messages:
    344
    Likes Received:
    32
    Reputations:
    7
    bjong, https://forum.antichat.ru/showpost.php?p=54693&postcount=6
    Короче, регулярки юзай.
     
  7. Gvidion

    Gvidion Elder - Старейшина

    Joined:
    11 Sep 2009
    Messages:
    82
    Likes Received:
    43
    Reputations:
    28
    вообщем ввожутакое дело

    PHP:
    mysql_query('INSERT INTO accs SET mails='reger@bk.ru', pass='1234567'')
        or die(
    "MySQL error: ".mysql_error());

    а браузер выдаёт мне:


    чё там не так то? всё по образцу делалось.
    таблица accs создана, поля mails и pass тоже есть.
     
  8. Gifts

    Gifts Green member

    Joined:
    25 Apr 2008
    Messages:
    2,494
    Likes Received:
    807
    Reputations:
    614
    Gvidion 1.1) Либо замените одни кавычки на другие ' -> "
    1.2) Либо экранируйте кавычки внутри запроса
    PHP:
     mysql_query('INSERT INTO accs SET mails=\'reger@bk.ru\', pass=\'1234567\'');
     
    mysql_query('INSERT INTO accs SET mails="reger@bk.ru", pass="1234567"')
    2) Запрос неправилен в принципе, читайте про синтаксис SQL запросов
     
    _________________________
  9. stepashka_

    stepashka_ Мотоциклист

    Joined:
    9 Nov 2009
    Messages:
    1,158
    Likes Received:
    424
    Reputations:
    231
    как сделать что бы при заходе на сайт была надпись "Сайт переехал, сейчас вы будите перенаправлены."
    И жетательно таймер, 3-2-1.
     
  10. b3

    b3 Moderator

    Joined:
    5 Dec 2004
    Messages:
    1,997
    Likes Received:
    899
    Reputations:
    198
    Синтаксис правильный, можно юзать insert into table values(..) а можно и SET"ом повставлять. В официальной док-ции читал оба варианта.
     
    _________________________
  11. LStr1ke

    LStr1ke Elder - Старейшина

    Joined:
    29 Jul 2009
    Messages:
    795
    Likes Received:
    140
    Reputations:
    73
    А не логичней будет сделать так:
    PHP:
    function good($num) {
    $temp fopen('link.txt''a+') or $s='1';e($s); //
    $num $num."\r\n";
    fwrite($temp$num'8');
    fclose ($temp);
    }
    good('1234567890');
     
  12. Gifts

    Gifts Green member

    Joined:
    25 Apr 2008
    Messages:
    2,494
    Likes Received:
    807
    Reputations:
    614
    stepashka_ в тему про яваскрипты лучше.
    HTML:
    <html><head><script language='JavaScript'>
    var cnt=0,intv=0;
    
    function startTimer(c)
    {
      cnt=c;
      if(intv) clearTimeout(intv);
      timer();
    }
    
    function timer()
    {
      if(cnt==0)
      {
        document.getElementById('elem').innerHTML='Сайт переехал, вы будете перенаправлены сейчас';
        location.href='http://yandex.ru';
        intv=0;
        return;
      }
      else
      {
        intv=setTimeout("timer()",1000);
      }
    
      document.getElementById('elem').innerHTML='Сайт переехал, вы будете перенаправлены через '+cnt;
      cnt--;
    }
    </script></head>
    <body onload="startTimer(5);">
    <span id='elem' />
    </body></html>  
     
    _________________________
    1 person likes this.
  13. Gvidion

    Gvidion Elder - Старейшина

    Joined:
    11 Sep 2009
    Messages:
    82
    Likes Received:
    43
    Reputations:
    28
    пасиба, работает!
    И для справки -

    [​IMG]
     
  14. Gvidion

    Gvidion Elder - Старейшина

    Joined:
    11 Sep 2009
    Messages:
    82
    Likes Received:
    43
    Reputations:
    28
    теперь вопрос в том, как в выражении

    PHP:
    mysql_query('INSERT INTO accs SET mails="reger@bk.ru", pass="1234567"')
    значением полей (mails, pass) сделать переменные.

    ну типа

    PHP:
    mysql_query('INSERT INTO accs SET mails=$mail, pass=$password')
    только этот вариант то и не работает...
     
  15. Dark_cracker

    Dark_cracker Member

    Joined:
    29 May 2009
    Messages:
    73
    Likes Received:
    8
    Reputations:
    1
    так
    PHP:
    mysql_query('INSERT INTO accs SET mails='.$mail.', pass='.$password
    или так
    PHP:
    mysql_query("INSERT INTO accs SET mails={$mail}, pass={$password}"
     
  16. Gifts

    Gifts Green member

    Joined:
    25 Apr 2008
    Messages:
    2,494
    Likes Received:
    807
    Reputations:
    614
    Gvidion пролистайте книжку, картинкой из которой вы меня пугали, на N страниц назад и посмотрите, как задаются строковые переменные. Например на инглише: http://www.php.net/manual/en/language.variables.basics.php

    Dark_cracker ваш вариант, скорее всего, не будет работать, так как SQL требует заносить строковые переменные в кавычки
     
    _________________________
    #16656 Gifts, 25 Oct 2010
    Last edited: 25 Oct 2010
  17. SHiNiGaMi

    SHiNiGaMi Banned

    Joined:
    3 Jan 2010
    Messages:
    382
    Likes Received:
    55
    Reputations:
    15
    прочитать. а потом вытянуть оттуда регулярками ОС
     
  18. Gvidion

    Gvidion Elder - Старейшина

    Joined:
    11 Sep 2009
    Messages:
    82
    Likes Received:
    43
    Reputations:
    28
    не пашет :(


    Вообщем как в MySQL базу занести переменную?
     
  19. Gvidion

    Gvidion Elder - Старейшина

    Joined:
    11 Sep 2009
    Messages:
    82
    Likes Received:
    43
    Reputations:
    28
    о! пашет так)

    PHP:
    mysql_query("INSERT INTO accs SET mail='{$m}', pass='{$p}'")
     
  20. b3

    b3 Moderator

    Joined:
    5 Dec 2004
    Messages:
    1,997
    Likes Received:
    899
    Reputations:
    198
    Почитайте основы РНР, вы даже вопрос задать правильно не можете. MySQL база тут не причем, правильно сформулированный вопрос несет за собой половину ответа. То что вас интересовало называется конкатенация строк в PHP.

    PHP:
    <?php
    $var 
    '<b><u>текст из переменной $var</u></b>';

    echo 
    'Вариант 1: строка '.$var.' строка дальше<br>'
    echo 
    "Вариант 2: строка в двойных ковычках $var строка дальше.<br>";
    echo 
    "Вариант 3: строка в двойных ковычках {$var} строка дальше.<hr>";

    // прмиер с массивом.
    $var = array();
    $var['text'] = '<b><u>текст из массива $var</u></b>';
    echo 
    'Вариант 2.1: строка '.$var['text'].' строка дальше<br>';
    echo 
    "Вариант 2.2: строка $var[text] строка дальше<br>";
    echo 
    "Вариант 2.3: строка {$var['text']} строка дальше<br>";
    ?>
     
    _________________________
    1 person likes this.
Loading...
Thread Status:
Not open for further replies.