Тест на наученото

От: Тест на наученото

От тези неща няма голям смисъл. Направи примерно блог система, и постепенно когато учиш нови неща ще можеш да си я ъпгрейдваш.
 
От: Тест на наученото

Нов ден - нова задачка :)

Направи ми следната форма: http://zeitgeist-bg.com/test/calculation/calculatorhtml.php

Използвай следните стойности:

Price: $19.95
Quantity: 6
Discount: $10
Tax 6%
Shipping method: Slow and stead -5$ (трябва да могат да се избират 3 метода за доставка: ($5- Slow and steady; $8,95 -Put a move on it. $19.36 -I need it yesterday!)
Number of payments to make: 12

Виждаш как работи формата и какво трябва да печата, а именно:

You have selected to purchase:
6 widget(s) at
$19.95 price each plus a
$5 shipping cost and a
6 percent tax rate
After your $10 discount, the total cost is $121.582.
Divided over 12 monthly payments that would be $10.131833333333 each.


Това са изчисленията:

price per unit - 19.95
quantity - 6.00
base price -119.70
shipping $5 -5.00
new price -124.70
discount $10 - 10.00
new price - 114.70
tax rate 6% - 6.88
new price - 121.58
1 payment - 10.13
 
От: Тест на наученото

Здравей! :) Аз съм уеб-програмист, така че ето няколко препоръки от мен като по-опитен, мисля че ще са ти полезни:


1. Направи прост скрипт, който да пълни таблици със съответната информация. Примерно ако имаш таблица с user_id (PRYMARY_KEY), поле за потребителско име и поле за парола (VARCHAR), поле за някакво число, поле за дата и поле за забележка (TEXT). В скрипта указваш името на таблицата, колко хиляди записа да ти генерира и какъв тип да вкара в съответните полета, и да ти я пълни с информация. Примерно за VARCHAR да са произволни комбинации от символи, за TEXT - произволни комбинации от думи (но не 10-20 думи, а хиляди).


2. Вероятно вече имаш направени някакви форми и др. неща, с които вкарваш информация в MySQL таблици и я извеждаш от там. Използвай горния скрипт, за да напълниш всяка от таблиците с 20 000, 50 000 или дори 100 000 записа и виж как работят страниците ти след това.

Казвам го, защото бях правил една форма, в която се въвеждаше информация и имаше поле, в което JavaScript зареждаше категории, според това къде да се запишат записите. И когато категориите станаха много, формата товареше кофти браузъра, защото в полето се зареждаха всичките примерно 1 000 категории. (Това е съвсем реален случай от съвсем реален проект в моята практика).


3. Направи страница, в която има толкова информация, колкото на страница 2 от тази тема (няма значение каква информация, важното е да се скролира няколко пъти надолу). В страницата да има примерно три колони и във всяка от тях произволен текст. След това направи така, че екрана на браузъра да се заеме целия от голяма картинка, т.е. толкова голяма, че ако е заредена само тя, да заема целия екран и да няма скролер. Нека картинката да е с разделителна способност, по-голяма от тази на монитора ти, полупрозрачна и застава пред всичко останало (т.е. през нея прозира съдържанието на страницата). Самата картинка да е непрозрачна - постарай се да постигнеш прозрачността чрез HTML & CSS.

Целта е или картинката да е пред вертикалния скролер и да не може потребителя да скролира (това със сигурност може да се получи във Firefox), или ако може да скролира, картинката да стои неподвижно, докато всичко зад нея се мести нагоре-надолу при скролирането на страницата. В никакъв случай да няма хоризонтален скролер, но и картинката да е по-голяма от екрана. Тествай с няколко браузъра - IE, Firefox, Opera... с колкото можеш повече и трябва във всички да изглежда еднакво.

Не примерно докато скролера е горе, пред теб да видаш картинката на цял екран, но като скролираш надолу, тя да си остане горе. Картинката да е винаги пред теб, полупрозрачна и зад нея да се вижда другото. С този урок ще научиш как да си наместваш HTML кода в различните браузъри и да изглежда еднакво.


В заключение искам да споделя, че докато още се учех, експериментирах с PHP кода и веднъж допуснах грешка, заради която всичките записи в една MySQL таблица добиха вида "Ivan Ivanov Tra-la-la". В тази таблица един от шефовете беше събирал контакти в продължение на 2 седмици и грешката ми струваше глобичка в размер на 250 лв. Помисли как да се защитиш от евентуална грешка в кода, така че да не съсипеш информацията във всички записи в таблицата. Тогава аз нямах архив на 24 часа, но освен с архив има още един начин да се предотврати това :)


Поздрави и успех! :)
 
Последно редактирано:
От: От: Тест на наученото

Нов ден - нова задачка :)

Направи ми следната форма: http://zeitgeist-bg.com/test/calculation/calculatorhtml.php

Използвай следните стойности:

Price: $19.95
Quantity: 6
Discount: $10
Tax 6%
Shipping method: Slow and stead -5$ (трябва да могат да се избират 3 метода за доставка: ($5- Slow and steady; $8,95 -Put a move on it. $19.36 -I need it yesterday!)
Number of payments to make: 12

Виждаш как работи формата и какво трябва да печата, а именно:

You have selected to purchase:
6 widget(s) at
$19.95 price each plus a
$5 shipping cost and a
6 percent tax rate
After your $10 discount, the total cost is $121.582.
Divided over 12 monthly payments that would be $10.131833333333 each.


Това са изчисленията:

price per unit - 19.95
quantity - 6.00
base price -119.70
shipping $5 -5.00
new price -124.70
discount $10 - 10.00
new price - 114.70
tax rate 6% - 6.88
new price - 121.58
1 payment - 10.13

http://testquality.x10.mx/
 
От: От: От: Тест на наученото

Имаш грешка в изчислението на едно плащане. $230,328/8 = 28,79 ,а не 19,194. Останалото е ок.

Виж файлът 3233

Брой плащания ти е променлива, а ти си фиксирал стойност 12 и винаги дели на нея.

Оправено е.
 
От: От: Тест на наученото

Здравей! :) Аз съм уеб-програмист, така че ето няколко препоръки от мен като по-опитен, мисля че ще са ти полезни:


1. Направи прост скрипт, който да пълни таблици със съответната информация. Примерно ако имаш таблица с user_id (PRYMARY_KEY), поле за потребителско име и поле за парола (VARCHAR), поле за някакво число, поле за дата и поле за забележка (TEXT). В скрипта указваш името на таблицата, колко хиляди записа да ти генерира и какъв тип да вкара в съответните полета, и да ти я пълни с информация. Примерно за VARCHAR да са произволни комбинации от символи, за TEXT - произволни комбинации от думи (но не 10-20 думи, а хиляди).


2. Вероятно вече имаш направени някакви форми и др. неща, с които вкарваш информация в MySQL таблици и я извеждаш от там. Използвай горния скрипт, за да напълниш всяка от таблиците с 20 000, 50 000 или дори 100 000 записа и виж как работят страниците ти след това.

Казвам го, защото бях правил една форма, в която се въвеждаше информация и имаше поле, в което JavaScript зареждаше категории, според това къде да се запишат записите. И когато категориите станаха много, формата товареше кофти браузъра, защото в полето се зареждаха всичките примерно 1 000 категории. (Това е съвсем реален случай от съвсем реален проект в моята практика).


3. Направи страница, в която има толкова информация, колкото на страница 2 от тази тема (няма значение каква информация, важното е да се скролира няколко пъти надолу). В страницата да има примерно три колони и във всяка от тях произволен текст. След това направи така, че екрана на браузъра да се заеме целия от голяма картинка, т.е. толкова голяма, че ако е заредена само тя, да заема целия екран и да няма скролер. Нека картинката да е с разделителна способност, по-голяма от тази на монитора ти, полупрозрачна и застава пред всичко останало (т.е. през нея прозира съдържанието на страницата). Самата картинка да е непрозрачна - постарай се да постигнеш прозрачността чрез HTML & CSS.

Целта е или картинката да е пред вертикалния скролер и да не може потребителя да скролира (това със сигурност може да се получи във Firefox), или ако може да скролира, картинката да стои неподвижно, докато всичко зад нея се мести нагоре-надолу при скролирането на страницата. В никакъв случай да няма хоризонтален скролер, но и картинката да е по-голяма от екрана. Тествай с няколко браузъра - IE, Firefox, Opera... с колкото можеш повече и трябва във всички да изглежда еднакво.

Не примерно докато скролера е горе, пред теб да видаш картинката на цял екран, но като скролираш надолу, тя да си остане горе. Картинката да е винаги пред теб, полупрозрачна и зад нея да се вижда другото. С този урок ще научиш как да си наместваш HTML кода в различните браузъри и да изглежда еднакво.


В заключение искам да споделя, че докато още се учех, експериментирах с PHP кода и веднъж допуснах грешка, заради която всичките записи в една MySQL таблица добиха вида "Ivan Ivanov Tra-la-la". В тази таблица един от шефовете беше събирал контакти в продължение на 2 седмици и грешката ми струваше глобичка в размер на 250 лв. Помисли как да се защитиш от евентуална грешка в кода, така че да не съсипеш информацията във всички записи в таблицата. Тогава аз нямах архив на 24 часа, но освен с архив има още един начин да се предотврати това :)


Поздрави и успех! :)


Нещо като това ли трябва да се получи ?
http://testquality.x10.mx/
 
От: Тест на наученото

Не. Нещо като това:

prozrachno1.png


Само че като скролирам, това полупрозрачното да си стои на едно място - не да бяга заедно със страницата. Т.е. да стои винаги пред мен и да скрива съдържанието, а НЕ както е на тази картинка:

prozrachno2.png


Това не го искам като задача - аз както виждаш съм си го направил. Т.е. не си длъжен да го правиш - просто ти давам насока в която да се пробваш и да натрупаш знания и опит :)
 
От: Тест на наученото

Не. Нещо като това:

Виж файлът 3274


Само че като скролирам, това полупрозрачното да си стои на едно място - не да бяга заедно със страницата. Т.е. да стои винаги пред мен и да скрива съдържанието, а НЕ както е на тази картинка:

Виж файлът 3275


Това не го искам като задача - аз както виждаш съм си го направил. Т.е. не си длъжен да го правиш - просто ти давам насока в която да се пробваш и да натрупаш знания и опит :)

Тук ще трябва малко photoshop ми се струва.
 
От: Тест на наученото

Никакъв фотошоп! Чист HTML&CSS :) Буквално всичко това го направих на HTML & CSS Не че е много, просто отдавна не се бях занимавал и останах приятно изненадан от новите възможности на браузърите. Все пак те се развиват :)
 
От: Тест на наученото

Никакъв фотошоп! Чист HTML&CSS :) Буквално всичко това го направих на HTML & CSS Не че е много, просто отдавна не се бях занимавал и останах приятно изненадан от новите възможности на браузърите. Все пак те се развиват :)

Това би трябвало да е верният отговор.
http://testquality.x10.mx/
 
От: Тест на наученото

Много добре се справяш, браво! :) Хубаво си се сетил за сенките, за прозрачността също. Не си спазил основното ми изискване - пред съдържанието да има полупрозрачна картинка, за да не мога да маркирам и копирам текста :)


Иначе имам съвсем дребни забележчици относно разлика в начина, по който изглежда в различните браузъри:

1. В ИЕ8 сенките ги няма - още малко ти трябва, за да го докараш да е еднакво
2. Пак в ИЕ8 този по-светлия фон бяга малко надолу в сравнение с Firefox 10

Тези са дребни, тъй че ще се справиш лесно с малко експерименти. Основната трудност е онова отпред, но като гледам колко бързо напредваш (а може би тези неща си ги усвоил отдавна, просто не сме ги виждали?), вярвам, че ще се справиш и с него.

Момчето или ги знае отдавна нещата, или се учи бързо, за което мога да го похваля и да му завидя - ако и аз напредвах толкова бързо като него едно време... Браво! :)


Аз няма да се намесвам повече и да давам повече акъл, нито изисквам да правиш каквото и да е. Пак казвам - това бяха само предложения, не си длъжен да ги правиш - надявам се да съм ти помогнал, като съм ти дал тези насоки. Успех! :)
 
От: Тест на наученото

Благодаря! А за копирането на текста има лиа смисъл да се правят излишни упражнения като винаги има начин или да се препише или да види в кода ?
 
От: Тест на наученото

Не, не, целта не е да се спре копирането му, това го казах като най-прост начин да разбереш дали има нещо отпред.

Т.е. ако пред текста има картинка и се опиташ го да маркираш, като задържиш левия бутон на мишката натиснат, ти дефакто хващаш картинката, все едно я влачиш - Drag&Drop - задачата е изпълнена.

Ако обаче при опит да маркираш, текста се маркира, значи картинката не е пред него - задачата не е изпълнена.

Целта на задачата е картинката да застане пред текста.


Добре, явно аз не обяснявам ясно или просто те затруднява, затова ще посоча малко примерен код, който обаче не работи 100% във всички браузъри:

Код:
<html>
<head>
<style>

BODY { margin: 0px; padding: 0px; }

#custom_vscroller { width: 100%; height: 100%; overflow: auto; }

#content { width: 900px; }

#front_image { position: absolute; z-index: 10; top: 0px; left: 0px; opacity: 0.5; width: 100%; height: 100%; background: url('картинка_с разделителна_способност_поне_1024x768'); }

</style>
</head>

<body>

<div id="custom_vscroller">
<center>
<div id="content">съдържание колкото няколко машинописни страници
</div>
</center>
</div>

<div id="front_image"></div>

</body>
</html>

Нещо такова исках да видя съчинено от теб, но явно не обяснявам добре :) Просто го използвах като пример за упражнение.

Примера е за монитор с разд. способност 1024x768 Ta това нещо прави един division - custom_vscroller, който заема цялата страница и неговата задача е скролера да е вътре в него, а не на BODY. Така картинката би трябвало да заема точно толкова място, колкото и custom_vscroller. Което в Мозила е ОК - картинката застава пред custom_vscroller.

Да, ама в ИЕ не е така - там картинката не скриваше скролера и като скролираш надолу, тя също отиваше нагоре, заедно със съдържанието. Което се решава като смениш DOCTYPE, но тогава прецакваш Мозила :D Нещо такова беше, не помня.

Общо взето проблема идваше от начина, по който браузърите тълкуват DOCTYPE: това, което ИЕ възприема като quirks mode, Мозила не го възприема така и обратно :D Имах чувството, че нарочно правят браузърите да не работят еднакво, с което единственото което постигат, е да пречат на уеб-програмистите.

Точно нещо такова се ползва в някои сайтове, примерно фейса и Предприемач: като цъкнеш на картинка, страницата си стои, показва се едно черно поле пред съдържанието и картинката се появява в средата му. В някои сайтове това черното май беше направено полупрозрачно. Само че в Предприемач може и да е Flash, не съм сигурен.

Е ако имаш желание, пробвай да го допишеш и да го накараш да работи еднакво във "всички" браузъри. Аз наскоро си играх с това, но не можах да го докарам да изглежда еднакво навсякъде, даже в ИЕ8 беше доста дървено. Но не съм и задълбавал след това.



П.С. Ако в някой пост публикувам код, не бързайте да го ползвате веднага - много често си редактирам постовете по над 10 пъти в продължение на половин-един час, особено ако са големи, тъй че има вероятност първоначалния код да не работи и да загубите доста време, чудейки се защо.
 
Последно редактирано:

Горе