Не нравятся результаты поиска? Попробуйте другой поиск!
dle-faq.ru FAQ (все вопросы) Общие вопросы Книжки для изучения PHP

Книжки для изучения PHP


     13.04.2014    Общие вопросы    1348

вопрос
Добрый вечер, посоветуйте книжки (желательно с ссылками) для изучения PHP, и можно ещё java))

Ответа пока нет


Комментарии пользователей (16)

Kane
12

97 | 32

Kane - 13 апреля 2014 21:34 - Юзер

Мне вот эти уроки помогли http://ru.html.net/tutorials/php/

adminfilm
18 | 2

adminfilm - 13 апреля 2014 22:41 - Юзер

http://webtheory.net/course/js/20/ для изучение javascript в этом сайте все отлично объясняют

dreamer
1

20

dreamer - 13 апреля 2014 23:24 - Юзер

Интересно, а про PHP есть?

adminfilm
18 | 2

adminfilm - 13 апреля 2014 23:56 - Юзер

dreamer,
нет пока что но будет наверно

dj-avtosh
39

1479 | 390

dj-avtosh - 14 апреля 2014 05:58 - шашлычник

Головоломки на php для хакера

skype: elhan.isaev

kprod
6

113 | 20

kprod - 14 апреля 2014 09:42 - Юзер

Котёров, PHP5 в подлиннике. Очень интресная книженция

dj-avtosh
39

1479 | 390

dj-avtosh - 14 апреля 2014 11:33 - шашлычник

Есть такое.

skype: elhan.isaev

alexeyfilatov
2

8

alexeyfilatov - 16 апреля 2014 21:22 - Юзер

Я бы порекомендовал не книгу а видео-курс Евгения Попова
http://www.windows-news.ru/obuchayuschee-video/74-evgeniy-popov-phpmysql-dlya-nachinayuschih-2007-g.html
Интернет-магазин под ключ - здесь обучается php на основе создания интернет магазина

D0Gmatist
225

794 | 281

D0Gmatist - 16 апреля 2014 21:46 - Местный

Цитата: alexeyfilatov
Евгения Попова
шаблонный учитель .. я бы по его курсам ни хрена не понял до конца и тупа работал шаблонно

Каждый программист знает - в правильном софте все должно быть прекрасно:
и пользовательский интерфейс, и программные решения, и гениальные ошибки!
Болтовня ничего не стоит. Покажите мне код.

alexeyfilatov
2

8

alexeyfilatov - 16 апреля 2014 22:05 - Юзер

Для новичка этот автор даёт хоть какое-то понимание PHP.

ПафНутиЙ
1065

3396 | 2434

ПафНутиЙ - 16 апреля 2014 22:37 - Админ

Если совсем новичек в php - Попов как раз то, что нужно. Я правда тоже не проникся, когда смотрел пару уроков. Для изучения лучший вариант - живой учитель на реальных примерах, реальных проектов, не особо важна квалификация, важно то, как вы усваиваете материал (ну и как этот материал подаётся).
По jQuery (вряд ли кто-то захочет изучать чистый js) я бы рекомендовал Антона Шевчука - доступным языком написано.

Каков вопрос - таков и ответ. Просто помните об этом.

D0Gmatist
225

794 | 281

D0Gmatist - 16 апреля 2014 22:46 - Местный


а я изучаю чисты js так как многое нужно впихивать без jQuery

Каждый программист знает - в правильном софте все должно быть прекрасно:
и пользовательский интерфейс, и программные решения, и гениальные ошибки!
Болтовня ничего не стоит. Покажите мне код.

ПафНутиЙ
1065

3396 | 2434

ПафНутиЙ - 17 апреля 2014 00:54 - Админ

например?

Каков вопрос - таков и ответ. Просто помните об этом.

D0Gmatist
225

794 | 281

D0Gmatist - 17 апреля 2014 08:51 - Местный

// следующий трек
function playerTrackNext(){

    
    // если включен повтор трека
    if ( playerPlayTupeMemory == 2 ) {
        if(trackRepeat == 1){
            playingStatus = 1;
            playerStop();
            playerPlayButton();
        
            return;
        }
    }
    
    var playerTrackNextArray;
    playerTrackNextArray = ajaxxx( catharsis_root + 'system/ajax/track_next_previous.php', '&oldId=' + playerPlayIdMemory + '&method=prev' + '&trackTupe=' + playerPlayTupeMemory + '&random=' + playerPlayRandom).split(';');
    goPlayerPlay(playerTrackNextArray[0], playerTrackNextArray[1], playerTrackNextArray[2], playerTrackNextArray[3]);

}

//координаты мыши для прогрес бара
function playerChange(t,e,elemId) {
    var playerChangeVarPercent;
    var r = t.getBoundingClientRect();
    var x = 0, y = 0;
    var coord=new Array();
    if (!e) e = window.event;
    if (e.pageX || e.pageY) {
        x = e.pageX;
        y = e.pageY;
    }
    else if (e.clientX || e.clientY) {
        x = e.clientX + (document.documentElement.scrollLeft || document.body.scrollLeft) - document.documentElement.clientLeft;
        y = e.clientY + (document.documentElement.scrollTop || document.body.scrollTop) - document.documentElement.clientTop;
    }
    coord[0]=x;coord[1]=y;
    playerChangeVarPercent = Math.round((x - r.left)*100 / document.getElementById(elemId).clientWidth);
    if(playingStatus == 1){
        if(elemId == "playerLoadedForm")uppodSend('player','seek:' + playerChangeVarPercent + '%');
    }
}

//координаты мыши для громкости
function agent(v) { return(Math.max(navigator.userAgent.toLowerCase().indexOf(v),0)); }
function xy(e,v) { return(v?(agent('msie')?e.clientY+document.body.scrollTop:e.pageY):(agent('msie')?e.clientX+document.body.scrollTop:e.pageX)); }
function dragOBJ(d,e) {
    
    var rpv = document.getElementById("playerVolProgresBarForm").getBoundingClientRect();
    if (!e) e = window.event;
    if((e.clientX - rpv.left) > 100)return;
    d.style.left = (((e.clientX - rpv.left) - 5) + 'px');
    document.getElementById("playerVolProgresBarScrol").style.width = (e.clientX - rpv.left) + "%";
    document.getElementById("playerVolProgresBarScrolInfo").innerHTML = (e.clientX - rpv.left) + "%";
    if(playingStatus != 0){
               uppodSend('player','v' + (e.clientX - rpv.left));
             setCookie("playerVolumeCookie", (e.clientX - rpv.left), 365);
             playerVolumeHold = e.clientX - rpv.left;
    }
    else playerVolumeHold = e.clientX - rpv.left;
    
    function drag(e) {
       flag = 0;
       if(!stop && (xy(e)+oX-eX) > -6 && (xy(e)+oX-eX) < 96){
            d.style.left=((tY=xy(e)+oX-eX)+'px');
            document.getElementById("playerVolProgresBarScrol").style.width = (xy(e)+oX-eX) + 5 + "%";
            document.getElementById("playerVolProgresBarScrolInfo").innerHTML = (xy(e)+oX-eX) + 5 + "%";
            if(playingStatus != 0){
                uppodSend('player','v' + (xy(e)+oX-eX+5));
                setCookie("playerVolumeCookie", (xy(e)+oX-eX + 5), 365);
                playerVolumeHold = xy(e)+oX-eX+5;
            }
            else playerVolumeHold = xy(e)+oX-eX+5;
        }
    }

    var oX=parseInt(d.style.left),oY=parseInt(d.style.top),eX=xy(e),eY=xy(e,1),tX,tY,stop;

    document.onmousemove=drag; document.onmouseup=function(){ stop=1; document.onmousemove=''; document.onmouseup=''; };

}

Каждый программист знает - в правильном софте все должно быть прекрасно:
и пользовательский интерфейс, и программные решения, и гениальные ошибки!
Болтовня ничего не стоит. Покажите мне код.

D0Gmatist
225

794 | 281

D0Gmatist - 17 апреля 2014 08:58 - Местный

// работа с панелью плеера и активными блоками
function playerMain(){

    if(playingStatus == 0){

        if ( getCookie("playerStatusCookie") == null ) { // состояние плеера
            setCookie("playerStatusCookie", "0", 365);
            setCookie("playerTupeCookie", "0", 365);
            setCookie("playerPlayIdCookie", "0", 365);
        } else if ( getCookie("playerStatusCookie") == 0 ) {
            setCookie("playerStatusCookie", "0", 365);
            setCookie("playerTupeCookie", "0", 365);
            setCookie("playerPlayIdCookie", "0", 365);
        } else if ( getCookie("playerStatusCookie") == 1 ) {
            playingStatus = getCookie("playerPlayIdCookie");
    
            var playerTrackSTPIArray;
            playerTrackSTPIArray = ajaxxx( catharsis_root + 'system/ajax/auto_play.php', '&oldId=' + getCookie("playerPlayIdCookie") + '&trackTupe=' + getCookie("playerTupeCookie")).split(';');
            goPlayerPlay(playerTrackSTPIArray[0], playerTrackSTPIArray[1], playerTrackSTPIArray[2], playerTrackSTPIArray[3]);
        }

    }

    if(playingStatus == 1){

        playerLoadedPercent = Math.round(uppodGet('player','bytesloaded') * 100 / uppodGet('player','bytestotal')); // Прогрес бар загрузки трека
        if( !isNaN(playerLoadedPercent) & playerPlayTupeMemory == 2 ) {
            document.getElementById("playerProgresUploadingTrack").style.display = "block"; // Отобразить
            document.getElementById("playerProgresUploadingTrack").style.width = playerLoadedPercent + "%"; // Прогрес бар загрузки трека - Вывод
            if(playerLoadedPercent == 100) {
                document.getElementById("playerProgresUploadingTrack").style.display = "none"; // По достижению 100% скрыть
            }
        }

        playerTimeGet = uppodGet('player','time'); // Реальное время игры трека
        playerDurationGet = uppodGet('player','duration'); // Временная длинна трека

        // Прогресбар игры трека - Деление  = Вариант без сотых долей
        playerTimePercent = Math.round(playerTimeGet * 100 / playerDurationGet);
        
        // Реальное время игры трека - Мин:Сек
        playerTimeSec = Math.floor(playerTimeGet - (Math.floor(playerTimeGet / 60) * 60));
        if(playerTimeSec < 10)playerTimeSec = "0" + playerTimeSec;
        playerTime = Math.floor(playerTimeGet / 60) + ":" + playerTimeSec;

        // Временная длинна трека - Мин:Сек
        playerDurationSec = Math.floor(playerDurationGet - (Math.floor(playerDurationGet / 60) * 60));
        if(playerDurationSec < 10)playerDurationSec = "0" + playerDurationSec;
        playerDuration = Math.floor(playerDurationGet / 60) + ":" + playerDurationSec;
    
        if(!isNaN(playerTimePercent)) {
            document.getElementById("playerProgresPlayTrack").style.width = playerTimePercent + "%"; // Прогресбар игры трека - Вывод
            document.getElementById("playerPresentTime").innerHTML = playerTime; // Реальное время игры трека - Вывод
            document.getElementById("playerTotalTime").innerHTML = playerDuration; // Временная длинна трека - Вывод

            if(playerTimePercent == 100) { // по оконцанию игры трека
                if(playerPlayTupeMemory == 2) { // если радио поток, по достижению 100% не реагировать
                    playingStatus = 0;
                    playerTrackNext();
                }
            }
        }
    }

}

// громкость 0%
function playerMute(){
    document.getElementById("playerVolProgresBarScrol").style.width = "0%";
    document.getElementById("playerVolProgresBarScrolIcon").style.left = "-5px";
    document.getElementById("playerVolProgresBarScrolInfo").innerHTML = "0%";
    uppodSend('player','v0');
    setCookie("playerVolumeCookie", "0", 365);
    playerVolumeHold = 0;
}

// громкость 100%
function playerMax(){
    document.getElementById("playerVolProgresBarScrol").style.width = "100%";
    document.getElementById("playerVolProgresBarScrolIcon").style.left = "95px";
    document.getElementById("playerVolProgresBarScrolInfo").innerHTML = "100%";
    uppodSend('player','v100');
    setCookie("playerVolumeCookie", "100", 365);
    playerVolumeHold = 100;
}

Каждый программист знает - в правильном софте все должно быть прекрасно:
и пользовательский интерфейс, и программные решения, и гениальные ошибки!
Болтовня ничего не стоит. Покажите мне код.

dj-avtosh
39

1479 | 390

dj-avtosh - 17 апреля 2014 01:20 - шашлычник

Только не Попов...

skype: elhan.isaev

Чтобы комментировать - войдите или зарегистрируйтесь на сайте

Похожие вопросы