Одесса: 2°С (вода 8°С)
Киев: 0°С
Львов: -2°С

Тема: php классы

Ответить в теме
Показано с 1 по 9 из 9
  1. Вверх #1

    По умолчанию php классы

    Доброво времени суток . хотел вот задать один вопросик, глупый до ужоса , объясните плиз , уже несколько дней читаю мануалы ,Всеравно не понимаю((
    есть два поля ввода, хчу сделать -если в полях ничего не вводили то FirstName.SecondName если же ввели то выводим введнное. обработка в там же
    если правильно понял делаем через классы

    <form action="" method="get">
    <input name="FirstName" type="text" size="40">
    <input name="SecondName" type="text" size="40">
    <input type="submit" value="Отправить!">

    </form>
    <?php


    class sampl
    {
    var $FirstName=5;
    var $SecondName =8 ;
    };
    function summa($FirstName,$SecondName)

    {
    return echo $this->$FirstName.$this->$$SecondName // я правльно понял что если не задано то мы возмем значение SecondName и занчения FirstName которые в var (e)
    }
    echo $FirstName.var $SecondName ; // выводим при ввденых значения полей
    ?>
    только вот оно шибки выдает и не получается жедаемого результата.
    Буду длагодарен за любую помощь
    Последний раз редактировалось Djeksan; 15.05.2009 в 15:15.


  2. Вверх #2
    Посетитель
    Пол
    Мужской
    Возраст
    29
    Сообщений
    202
    Репутация
    7
    начни с простого

  3. Вверх #3
    Тебе здесь пока классы не нужны. Когда к ним доберёшься — читай/учи сразу про пятый пхп.

    Все переменные, которые приходят из форм или адресной строки (определённые после знака вопроса) определены в суперглобальном массиве $_REQUEST.

    Например, если у тебя адрес вида: http://example.com/my.php?first_name=foo
    тогда в скрипте ты можешь получить переменную first_name так:
    if (isset($_REQUEST['first_name']) {
    $first_name = $_REQUEST['first_name']; // по-хорошему здесь нужно сделать валидацию
    } else {
    $first_name = 'No name'; // значение по умолчанию
    }

    Так же имей в виду, что данные могут быть оправлены GET-ом и POST-ом, а так же могут быть получены из COOKIE — для всех этих «массивов» тоже есть эквиваленты (и они же объеденены в массиве $_REQUEST).

  4. Вверх #4
    Частый гость Аватар для CrazySquirrel
    Пол
    Мужской
    Возраст
    30
    Сообщений
    900
    Репутация
    95
    Чёто я не понял разделения логики.... При данном коде есть 2 варианта, или проверять JS на месте, или проверять PHP но только после REQUEST, тоесть после отправки формы на сервак.... если форма ушла на сервак, то обращаемся к её елементам $_POST['FirstName'](ну или $_GET, в зависимости от того что стоит в method="" при описании самой формы).

  5. Вверх #5
    Супер модератор
    Борец за справедливость
    Аватар для commando
    Пол
    Мужской
    Адрес
    Odessa, UA
    Сообщений
    3,125
    Репутация
    1554
    Главный совет уже прозвучал. Нужно начать с простого и не пытаться использовать ООП просто ради того чтобы использовать. Сначала изучить общие концепции пхп (обработка запросов, сессии, файловая система), а потом уже почитать про ООП и про реализацию в пхп
    /dev/php

  6. Вверх #6
    Спасибки , приму к сведенью

  7. Вверх #7
    Новичок Аватар для Mихаил
    Пол
    Мужской
    Адрес
    Одесса
    Возраст
    32
    Сообщений
    65
    Репутация
    12
    Записей в дневнике
    1
    Цитата Сообщение от Djeksan Посмотреть сообщение
    ...
    function summa ($FirstName,$SecondName)

    {
    return echo $this->$FirstName.$this->$$SecondName // я правльно понял что если не задано то мы возмем значение SecondName и занчения FirstName которые в var (e)
    }
    echo $FirstName.var $SecondName ; // выводим при ввденых значения полей
    ?>
    только вот оно шибки выдает и не получается жедаемого результата. .....
    Думаю что $this->$FirstName неправильный вариан обращения к методу класса, нужно $this->FirstName. Притом в разделе объявлений переменных лучше задать
    Код:
    protected FirstName;
    это будет лучше при дальнейшем использовании класса.

    Для проверки ввода данных можно использовать JavaScript.
    PHP код:
    <script language="javascript">
    function 
    correct_form_data() {
     var 
    firstname document.form1.firstname.value.length;
     if(
    firstname==0) {
       
    alert("Заполните поле firstname");
       
    firstname prompt("Укажите firstname");
     } else  
       
    parent.location "page.php&userfirstname="+firstname;
    }
    </script> 
    Ну а в разметке задать:
    Код HTML:
    <form name="form1">
    <input type="text" name="firstname">
    </form>
    <a href="javascript:void(0)" onClick="correct_form_data()">Отправить</a>
    Все указаное выше - это как вариант, каждый может использовать свой подход.


    Твой код в немного исправленном виде
    PHP код:
    class sampl
    {
     function 
    summa($FirstName="Вася",$SecondName="Пупкин")
     {
       return 
    $FirstName." ".$SecondName;
     }
    };
    $sum = new sampl();
    echo 
    $sum->summa();      // тут значения по дефолту Вася Пупкин
    echo $sum->summa("Василий","Иванович"); // здесь мы уже задаем
    ?> 

  8. Вверх #8
    Большое спасибки Mихаил за исчерпывающий ответ

  9. Вверх #9
    Новичок Аватар для Mихаил
    Пол
    Мужской
    Адрес
    Одесса
    Возраст
    32
    Сообщений
    65
    Репутация
    12
    Записей в дневнике
    1
    Пожалуйста


Ответить в теме

Похожие темы

  1. Введение в PHP, MySQL
    от Anonymous в разделе Программирование
    Ответов: 81
    Последнее сообщение: 21.03.2015, 02:17
  2. Бесплатно 25 мб места, cPanel, MySQL, PHP, CGI, Perl и др.
    от OnlineHoster в разделе Интернет :: технические вопросы
    Ответов: 1
    Последнее сообщение: 25.02.2006, 22:00
  3. помогите! PHP -> сохранение страницы с другого хоста
    от [)wad.org в разделе Программирование
    Ответов: 5
    Последнее сообщение: 22.03.2005, 16:25
  4. пмогите!!!!! (php,mysql, while();)
    от Jeno в разделе Программирование
    Ответов: 7
    Последнее сообщение: 23.11.2004, 17:07
  5. Кто у нас программирует на PHP?
    от iFog в разделе Программирование
    Ответов: 23
    Последнее сообщение: 10.03.2004, 17:35

Социальные закладки

Социальные закладки

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения