1 00:00:00,000 --> 00:00:08,802 2 00:00:08,802 --> 00:00:11,140 >> JASON HIRSCHHORN: Welcome todos a oito semanas. 3 00:00:11,140 --> 00:00:13,420 Temos uma semana emocionante na nossa frente. 4 00:00:13,420 --> 00:00:21,390 Vocês têm mergulhou neste últimos de palestras para PHP, SQL, HTML, CSS, de modo 5 00:00:21,390 --> 00:00:27,270 quatro línguas nova marca que vão para assumir o resto do curso. 6 00:00:27,270 --> 00:00:30,750 Também vamos aprender um par de outro línguas antes do final do curso. 7 00:00:30,750 --> 00:00:35,200 Mas de qualquer forma, é desnecessário dizer, esta é uma momento muito emocionante em CS50, agora você 8 00:00:35,200 --> 00:00:41,200 domina C, ostensivamente, e são passar para programação para websites. 9 00:00:41,200 --> 00:00:45,320 >> Então, esta semana, estamos indo para ir em um rápido tour por quatro 10 00:00:45,320 --> 00:00:50,200 línguas que acabei de mencionar, HTML, CSS, PHP e SQL. 11 00:00:50,200 --> 00:00:53,340 E, esperamos, vamos deixar muito tempo no final da secção de falar 12 00:00:53,340 --> 00:00:58,800 sobre set P desta semana e resposta quaisquer dúvidas que todos têm. 13 00:00:58,800 --> 00:01:03,500 >> Toda semana, a mesma lista de recursos para você, para ajudá-lo com a semana de 14 00:01:03,500 --> 00:01:05,780 conjunto de problemas e indo sobre o material - 15 00:01:05,780 --> 00:01:09,440 mas esta semana, em particular, para estes conjuntos de problemas com base na Web, há uma 16 00:01:09,440 --> 00:01:12,350 série de outros recursos para fora lá que você provavelmente vai 17 00:01:12,350 --> 00:01:13,500 encontrar incrivelmente útil. 18 00:01:13,500 --> 00:01:14,670 Eu tê-los aqui. 19 00:01:14,670 --> 00:01:17,570 Vou enviar e-mail que você esta após seção, e isso também estar online. 20 00:01:17,570 --> 00:01:21,700 >> Mas, em particular, há uma abundância de grandes recursos lá fora. 21 00:01:21,700 --> 00:01:24,380 Há também alguns não tão grande queridos, por isso muito cuidado com esses. 22 00:01:24,380 --> 00:01:28,210 Mas neste slide, eu tenho quatro bons recursos, um para cada um dos 23 00:01:28,210 --> 00:01:30,600 idiomas que você estará trabalhando com esta semana - 24 00:01:30,600 --> 00:01:35,090 uma folha de referência para HTML, uma folha de referência para CSS. 25 00:01:35,090 --> 00:01:38,320 Este aqui é o manual do PHP. 26 00:01:38,320 --> 00:01:42,110 >> Então, ao invés do homem de digitação e, em seguida, um PHP comando, este é o lugar onde você faria 27 00:01:42,110 --> 00:01:46,980 ir para procurar o protótipo da função e exemplos e também algumas dicas e 28 00:01:46,980 --> 00:01:48,770 truques para usar funções PHP. 29 00:01:48,770 --> 00:01:51,590 Você vai usar este site, muitas vezes, eu encorajo-vos a tornar-se 30 00:01:51,590 --> 00:01:52,280 familiarizado com ele. 31 00:01:52,280 --> 00:01:55,860 Ele pode ser um pouco técnica, mas também fornece uma tonelada de recursos e 32 00:01:55,860 --> 00:02:00,440 exemplos para todas as funções e mesmo outros, como forma de usar arrays ou 33 00:02:00,440 --> 00:02:01,500 diferentes tipos de variáveis. 34 00:02:01,500 --> 00:02:03,480 Este site é muito útil para PHP. 35 00:02:03,480 --> 00:02:07,160 >> E, em seguida, para o SQL, se você mergulhou esta conjunto de problemas da semana, você vai saber 36 00:02:07,160 --> 00:02:09,160 que estamos usando um banco de dados. 37 00:02:09,160 --> 00:02:13,340 E nós acessar esse banco de dados por meio de uma interface relativamente agradável. 38 00:02:13,340 --> 00:02:15,760 Ou isso é uma forma de acesso esse banco de dados. 39 00:02:15,760 --> 00:02:19,670 A interface de usuário é chamada phpMyAdmin. 40 00:02:19,670 --> 00:02:23,400 Há uma aba SQL, o que nós vamos olhar para mais tarde hoje. 41 00:02:23,400 --> 00:02:28,230 >> E você pode digitar em seu SQL amostra consultas, de fazer as coisas em seu banco de dados 42 00:02:28,230 --> 00:02:29,780 e, em seguida, executar esses procedimentos. 43 00:02:29,780 --> 00:02:31,850 E se eles estão corretos, ele vai dizer, de um correto isso. 44 00:02:31,850 --> 00:02:33,480 Se eles estiverem incorretas, ele vai digamos, é incorreta. 45 00:02:33,480 --> 00:02:37,260 Isso é um ótimo lugar para praticar o seu Consultas SQL antes de escrevê-los em 46 00:02:37,260 --> 00:02:39,990 seu código, para se certificar de que você tem o formato correto. 47 00:02:39,990 --> 00:02:42,080 >> Finalmente, um outro site aqui. 48 00:02:42,080 --> 00:02:45,390 Este é o site onde você pode ir e certifique-se de seu 49 00:02:45,390 --> 00:02:47,520 Código HTML é válido. 50 00:02:47,520 --> 00:02:51,250 Então, antes de virar seus problemas definir esta semana, certifique-se de todos 51 00:02:51,250 --> 00:02:52,690 seu HTML é válido. 52 00:02:52,690 --> 00:02:55,840 >> Na semana passada, você tinha corrido valgrind, para certifique-se que não tinha vazamentos de memória. 53 00:02:55,840 --> 00:02:59,050 Esta semana, você precisa ter certeza de tudo do seu código é HTML5 válido. 54 00:02:59,050 --> 00:03:02,140 Se não for HTML5 válido, você está vai conseguir pontos fora. 55 00:03:02,140 --> 00:03:03,110 >> Por isso, certifique - 56 00:03:03,110 --> 00:03:05,700 só porque ele não funciona significa que é completamente válido. 57 00:03:05,700 --> 00:03:09,770 Execute o seu código através deste website antes de virar-lo dentro 58 00:03:09,770 --> 00:03:10,810 Mais uma vez, aqui está o site. 59 00:03:10,810 --> 00:03:15,150 >> Se você tiver qualquer feedback para mim, temos um par de mais seções esquerda, 60 00:03:15,150 --> 00:03:18,100 e eu sempre quero fazer o que puder para fornecer-lhe tudo com a melhor secção 61 00:03:18,100 --> 00:03:19,460 experiência possível. 62 00:03:19,460 --> 00:03:22,115 Então deixe-me saber se há alguma coisa que eu pode fazer para melhorar ou se houver 63 00:03:22,115 --> 00:03:24,730 coisas que você vê que eu poderia fazer melhor. 64 00:03:24,730 --> 00:03:25,710 Obrigado, Avi. 65 00:03:25,710 --> 00:03:27,610 Colocá-lo no site. 66 00:03:27,610 --> 00:03:31,870 >> Esta foi a bicicleta que eu tive quando eu foi, digamos, quatro em casa. 67 00:03:31,870 --> 00:03:34,500 É uma Tartaruga Ninja Teenage Mutant ciclismo, no caso de você não pode dizer, 68 00:03:34,500 --> 00:03:35,345 porque é um pouco embaçada. 69 00:03:35,345 --> 00:03:38,900 Você pode obtê-lo agora em ToysRUs para, eu acho, cerca de US $ 100. 70 00:03:38,900 --> 00:03:42,690 >> Mas a característica desta moto que eu quero você prestar atenção são estes 71 00:03:42,690 --> 00:03:43,480 bem aqui. 72 00:03:43,480 --> 00:03:44,980 Estas são as rodinhas. 73 00:03:44,980 --> 00:03:50,230 Até agora, você tem sido handheld através de C. E temos tido um longo 74 00:03:50,230 --> 00:03:53,610 vez, dois meses mais, passar por C. 75 00:03:53,610 --> 00:03:55,440 >> Para estes próximos dois idiomas, nós não vamos 76 00:03:55,440 --> 00:03:56,600 passar muito tempo. 77 00:03:56,600 --> 00:03:58,350 As rodinhas estão saindo. 78 00:03:58,350 --> 00:04:01,360 E nós estamos indo para mergulhar estes línguas rapidamente e mover-se através 79 00:04:01,360 --> 00:04:04,720 los rapidamente, o que não quer dizer que nós apenas estamos indo para deixá-lo natação 80 00:04:04,720 --> 00:04:07,590 lá fora, com nenhuma maneira de apoiar si ou descobrir como estes 81 00:04:07,590 --> 00:04:08,270 línguas funcionam. 82 00:04:08,270 --> 00:04:10,750 Eu apenas mostrei uma lista de recursos para ajudá-lo. 83 00:04:10,750 --> 00:04:14,560 >> Mas tenha em mente que o PHP é incrivelmente semelhante ao C. Vamos passar por cima de 84 00:04:14,560 --> 00:04:15,970 hoje e algumas das diferenças. 85 00:04:15,970 --> 00:04:17,990 Mas, na maior parte, existem para loops. 86 00:04:17,990 --> 00:04:18,750 Há se as condições. 87 00:04:18,750 --> 00:04:20,680 >> Quando você quer resolver um problema, você vai usar um 88 00:04:20,680 --> 00:04:22,029 combinação desses. 89 00:04:22,029 --> 00:04:22,920 É muito similar. 90 00:04:22,920 --> 00:04:26,040 A lógica deve ser muito semelhante ao o que você fez no passado. 91 00:04:26,040 --> 00:04:29,810 O que é realmente novo esta semana é a sintaxe e como você se expressa. 92 00:04:29,810 --> 00:04:32,850 E você quer escrever um loop for, mas pode parecer um pouco diferente. 93 00:04:32,850 --> 00:04:35,910 Ou você quer criar uma matriz, mas pode parecer um pouco diferente. 94 00:04:35,910 --> 00:04:39,920 >> Portanto, tenha em mente que, movendo-se para a frente, a lógica é muito semelhante ao que 95 00:04:39,920 --> 00:04:41,020 que você fez no passado. 96 00:04:41,020 --> 00:04:44,030 Mas agora você está indo para estar encontrando um monte de nova sintaxe. 97 00:04:44,030 --> 00:04:47,600 E nós não vamos levá-lo através todos os elementos de sintaxe. 98 00:04:47,600 --> 00:04:53,020 Então, é realmente até você descobrir, on-line ou através de estender a mão em 99 00:04:53,020 --> 00:04:58,770 Discutir ou enviando-me ou falar com uns aos outros, como escrever as coisas em 100 00:04:58,770 --> 00:05:02,580 PHP e como escrever consultas SQL e como usar HTML e CSS. 101 00:05:02,580 --> 00:05:06,160 >> Mas só para você saber, não é isso estamos tentando jogá-lo lá fora 102 00:05:06,160 --> 00:05:07,630 novamente para nadar os tubarões. 103 00:05:07,630 --> 00:05:10,600 Isto é o que você provavelmente vai fazer com seu projeto final, se você escolher um 104 00:05:10,600 --> 00:05:15,150 linguagem diferente, como IOS e Objective C, ou se você decidir começar 105 00:05:15,150 --> 00:05:17,580 programação no futuro e mergulhar em outros idiomas, 106 00:05:17,580 --> 00:05:19,210 como Python ou Ruby. 107 00:05:19,210 --> 00:05:23,380 >> Muitas vezes, a lógica é muito semelhante em todas as línguas, eo 108 00:05:23,380 --> 00:05:24,560 sintaxe é que é diferente. 109 00:05:24,560 --> 00:05:27,560 E vai ser até você, como o programador, para ir usar a web 110 00:05:27,560 --> 00:05:30,790 recursos disponíveis para você e figura a forma de expressar o que você sabe 111 00:05:30,790 --> 00:05:33,200 para expressar em C, numa idioma diferente. 112 00:05:33,200 --> 00:05:36,410 Portanto, esta é uma boa prática, tanto para o seu projeto final, e mais uma vez, por 113 00:05:36,410 --> 00:05:40,150 o que você provavelmente vai fazer depois de sair CS50. 114 00:05:40,150 --> 00:05:42,550 >> Antes de seguir em frente, faz qualquer um tem alguma dúvida sobre o que 115 00:05:42,550 --> 00:05:43,800 Eu tenho feito até agora? 116 00:05:43,800 --> 00:05:52,450 117 00:05:52,450 --> 00:05:53,120 Grande. 118 00:05:53,120 --> 00:05:53,910 Vamos seguir em frente. 119 00:05:53,910 --> 00:05:59,090 >> Primeiro, vamos falar brevemente sobre o comando chmod. 120 00:05:59,090 --> 00:06:02,420 Isso, vamos fazer no início de seus problemas de definir. 121 00:06:02,420 --> 00:06:05,050 Uma das primeiras instruções para você, depois que você baixar o 122 00:06:05,050 --> 00:06:09,280 código de distribuição, é a alteração da permissões dos arquivos e 123 00:06:09,280 --> 00:06:11,350 diretórios que recebe. 124 00:06:11,350 --> 00:06:16,430 >> Alguém pode arriscar um palpite ou sabe por isso que é importante para mudar a 125 00:06:16,430 --> 00:06:20,012 permissões de certos arquivos e diretórios em seu computador? 126 00:06:20,012 --> 00:06:20,956 Avi - 127 00:06:20,956 --> 00:06:24,796 >> AUDIÊNCIA: Então ninguém, exceto para você pode ver o que você está fazendo? 128 00:06:24,796 --> 00:06:25,470 >> JASON HIRSCHHORN: OK. 129 00:06:25,470 --> 00:06:28,330 Portanto, se queremos colocar algo na web e você tem permissões definidas que 130 00:06:28,330 --> 00:06:30,960 só você pode ver algo, então ninguém mais pode 131 00:06:30,960 --> 00:06:32,530 ver o que você criou. 132 00:06:32,530 --> 00:06:33,380 O que mais? 133 00:06:33,380 --> 00:06:34,320 É. 134 00:06:34,320 --> 00:06:37,360 >> AUDIÊNCIA: Evitar qualquer outra pessoa que você Não quero ver alguma coisa, a partir de 135 00:06:37,360 --> 00:06:37,870 vendo algo. 136 00:06:37,870 --> 00:06:38,820 >> JASON HIRSCHHORN: Isso é verdade também. 137 00:06:38,820 --> 00:06:40,730 Provavelmente há algum código que você escreve, que você não 138 00:06:40,730 --> 00:06:42,690 quero que as pessoas vejam. 139 00:06:42,690 --> 00:06:46,190 Você provavelmente está OK com as pessoas vendo seu HTML e seu JavaScript. 140 00:06:46,190 --> 00:06:50,360 Mas o PHP, um código de back-end, um monte de a lógica ao seu código, talvez o 141 00:06:50,360 --> 00:06:53,200 coisas que armazenam algumas de suas senhas para o seu banco de dados, você não 142 00:06:53,200 --> 00:06:55,880 quero que as pessoas vejam que tipo de informação. 143 00:06:55,880 --> 00:06:59,420 >> Portanto, é importante que, cada arquivo e diretório que criamos tem permissões 144 00:06:59,420 --> 00:07:03,660 aplicável à possibilidade ou não queremos pessoas para ver esses tipos de arquivos e 145 00:07:03,660 --> 00:07:08,030 diretórios e ser capaz de acessá-los e, potencialmente, até mesmo alterá-los. 146 00:07:08,030 --> 00:07:09,920 >> Assim, existem três tipos de permissões. 147 00:07:09,920 --> 00:07:14,980 Há uma permissão de leitura, o que significa você pode ler um arquivo ou uma lista a 148 00:07:14,980 --> 00:07:16,490 conteúdo do diretório. 149 00:07:16,490 --> 00:07:20,820 Há a permissão de gravação, o que significa que você pode alterar um arquivo ou mudança 150 00:07:20,820 --> 00:07:24,910 um diretório e, em seguida, executar o permissão, o que significa que você pode 151 00:07:24,910 --> 00:07:31,060 executar um arquivo ou melhor, você pode mover-se em um diretório. 152 00:07:31,060 --> 00:07:34,470 Então algo CD, se você tiver o permissão para executá-lo, você pode mover 153 00:07:34,470 --> 00:07:37,300 para o diretório. 154 00:07:37,300 --> 00:07:38,510 >> Este é um breve exemplo. 155 00:07:38,510 --> 00:07:40,700 Mais uma vez, você foi ao longo deste no conjunto de problemas. 156 00:07:40,700 --> 00:07:44,630 Mas eu criar um diretório com o comando mkdir. 157 00:07:44,630 --> 00:07:46,320 Eu alterar as permissões. 158 00:07:46,320 --> 00:07:48,505 Estas duas linhas realmente fazer exatamente a mesma coisa. 159 00:07:48,505 --> 00:07:52,580 Isso é para ilustrar que a sintaxe alterar as permissões, se você faz 160 00:07:52,580 --> 00:07:55,600 a a + x ou 711, estas são as mesmas. 161 00:07:55,600 --> 00:07:57,550 >> Nós olhamos para baixo nesta mesa agradável. 162 00:07:57,550 --> 00:07:59,960 Vemos que há de usuário permissões primeiro. 163 00:07:59,960 --> 00:08:03,280 É você, o indivíduo, e seu servidor, potencialmente. 164 00:08:03,280 --> 00:08:05,070 E depois há o grupo e outros. 165 00:08:05,070 --> 00:08:09,350 As diferenças entre os dois são relativamente triviais. 166 00:08:09,350 --> 00:08:11,170 Então, geralmente, vamos agrupar aqueles em conjunto. 167 00:08:11,170 --> 00:08:14,380 >> Mas, essencialmente, se temos um arquivo chamado inclui que queremos ser 168 00:08:14,380 --> 00:08:18,760 capazes de nos editar e que queremos outros para ser capaz de executar, 169 00:08:18,760 --> 00:08:20,560 é a permissão 711. 170 00:08:20,560 --> 00:08:22,390 E vemos que para baixo aqui nesta mesa. 171 00:08:22,390 --> 00:08:24,730 Temos uma leitura, gravação e execução. 172 00:08:24,730 --> 00:08:26,790 Para cada um de nós, queremos ser capaz de fazer aquelas. 173 00:08:26,790 --> 00:08:30,160 Grupo e outros, nós só queremos que sejam capazes de executar. 174 00:08:30,160 --> 00:08:33,860 >> A nossa forma de traduzir isso para um número de 175 00:08:33,860 --> 00:08:36,870 permissão é através de binário. 176 00:08:36,870 --> 00:08:41,780 Então, se temos três uns, isso é um 1 na coluna queridos, um 1 nos pares 177 00:08:41,780 --> 00:08:43,049 coluna, uma coluna de um dos quatro. 178 00:08:43,049 --> 00:08:45,180 Isso é 7 ali mesmo. 179 00:08:45,180 --> 00:08:47,450 E essa permissão é 1. 180 00:08:47,450 --> 00:08:48,390 Esta permissão é 1. 181 00:08:48,390 --> 00:08:54,200 Então, 711 quando é o mesmo que dar nos ler, escrever e executar, 182 00:08:54,200 --> 00:08:56,660 e todos os outros privilégios de execução. 183 00:08:56,660 --> 00:08:59,180 >> Esta linha aqui, geralmente terá que ler e escrever quando nós 184 00:08:59,180 --> 00:09:00,250 criar um diretório. 185 00:09:00,250 --> 00:09:04,650 Portanto, esta linha aqui só acrescenta executar privilégios a todos. 186 00:09:04,650 --> 00:09:07,450 Assim que seria semelhante a, em Além de que temos, 187 00:09:07,450 --> 00:09:09,930 adição de 1, 1, 1 a todos. 188 00:09:09,930 --> 00:09:13,880 >> Considerando isso, é desnecessário adicionar ler e escrever. 189 00:09:13,880 --> 00:09:16,130 Mas se você estiver indo para usar os números, você não pode simplesmente acrescentar algo. 190 00:09:16,130 --> 00:09:19,070 Você substituir o que quer que fosse permissão lá e implementá-los com o novo 191 00:09:19,070 --> 00:09:20,920 número que você dá. 192 00:09:20,920 --> 00:09:21,930 Isso foi muito rápido. 193 00:09:21,930 --> 00:09:24,115 Alguém tem alguma dúvida sobre como alterar permissões? 194 00:09:24,115 --> 00:09:28,460 195 00:09:28,460 --> 00:09:28,950 >> OK. 196 00:09:28,950 --> 00:09:32,480 Se eu tiver um arquivo PHP, que permissões eu quero que ele tem? 197 00:09:32,480 --> 00:09:36,638 198 00:09:36,638 --> 00:09:38,780 Isto é, no conjunto de especificações problema. 199 00:09:38,780 --> 00:09:41,590 Assim, você pode olhar para a especificação e em seguida, leia-me a resposta. 200 00:09:41,590 --> 00:09:45,820 201 00:09:45,820 --> 00:09:48,605 >> AUDIÊNCIA: Você quer que o usuário ter permissões de leitura e escrita. 202 00:09:48,605 --> 00:09:51,080 E você quer que todo mundo mais o que não tem nada. 203 00:09:51,080 --> 00:09:53,060 >> JASON HIRSCHHORN: E o números é isso? 204 00:09:53,060 --> 00:09:53,480 >> AUDIÊNCIA: 600. 205 00:09:53,480 --> 00:09:54,840 >> JASON HIRSCHHORN: 600. 206 00:09:54,840 --> 00:09:59,550 Então chmod 600 - sempre que você imprime um arquivo PHP, chmod-lo para 600. 207 00:09:59,550 --> 00:10:00,370 OK. 208 00:10:00,370 --> 00:10:01,890 Eu tenho um diretório. 209 00:10:01,890 --> 00:10:04,870 Alguém além de Jeff, Eu tenho uma pasta de arquivo. 210 00:10:04,870 --> 00:10:08,060 Quais as permissões que eu quero para dar a essa pasta - 211 00:10:08,060 --> 00:10:11,620 também no conjunto de problemas de especificação, logo abaixo esta resposta ou 212 00:10:11,620 --> 00:10:14,840 a resposta anterior? 213 00:10:14,840 --> 00:10:16,160 Também potencialmente no slide - 214 00:10:16,160 --> 00:10:16,450 Marcus. 215 00:10:16,450 --> 00:10:17,230 >> AUDIÊNCIA: Para o 216 00:10:17,230 --> 00:10:18,180 pasta, é 711. 217 00:10:18,180 --> 00:10:19,590 JASON HIRSCHHORN: 711 - 218 00:10:19,590 --> 00:10:21,230 então uma pasta, você quer dar 711. 219 00:10:21,230 --> 00:10:25,280 Você quer ser capaz de ler essa pasta, alterar os diretórios, mover-se em 220 00:10:25,280 --> 00:10:25,785 essa pasta. 221 00:10:25,785 --> 00:10:28,865 E você quer que todo mundo seja capaz para navegar dentro dessa pasta, mas 222 00:10:28,865 --> 00:10:30,790 não necessariamente alterar o seu conteúdo. 223 00:10:30,790 --> 00:10:33,720 E sobre um arquivo não-PHP, dizer, um arquivo JavaScript? 224 00:10:33,720 --> 00:10:36,090 Quais as permissões que queremos para dar esse tipo de arquivo? 225 00:10:36,090 --> 00:10:37,020 >> AUDIÊNCIA: 644. 226 00:10:37,020 --> 00:10:38,030 >> JASON HIRSCHHORN: 644 - 227 00:10:38,030 --> 00:10:40,010 por isso queremos dar-lhe 644? 228 00:10:40,010 --> 00:10:42,880 >> AUDIÊNCIA: Para permitir que outras pessoas lê-lo. 229 00:10:42,880 --> 00:10:44,840 E você ler ou escrever. 230 00:10:44,840 --> 00:10:48,540 >> JASON HIRSCHHORN: Então, bem, todo mundo mais pode ler esse arquivo JavaScript. 231 00:10:48,540 --> 00:10:51,420 E você pode mudar isso, além para ser capaz de lê-lo. 232 00:10:51,420 --> 00:10:54,970 Assim, um dos erros mais comuns de pessoas ter com este conjunto de problemas e sua 233 00:10:54,970 --> 00:10:58,880 projeto final, se é uma final com base na Web projeto é, eles não vão ter definido 234 00:10:58,880 --> 00:11:00,170 as permissões corretas. 235 00:11:00,170 --> 00:11:03,180 E que não vai ser capaz para ver o seu site. 236 00:11:03,180 --> 00:11:04,840 Ou uma parte específica do seu site. 237 00:11:04,840 --> 00:11:06,930 >> Então, certifique-se de definir o permissões corretamente. 238 00:11:06,930 --> 00:11:10,730 Não basta assumir que ele vai fazê-lo automaticamente para você. 239 00:11:10,730 --> 00:11:11,500 >> OK. 240 00:11:11,500 --> 00:11:15,100 Isso foi uma coisa pequena que passamos uma boa quantidade de tempo, por isso 241 00:11:15,100 --> 00:11:16,190 podemos pregá-lo. 242 00:11:16,190 --> 00:11:18,000 Vamos passar para HTML. 243 00:11:18,000 --> 00:11:20,430 >> E, novamente, para estes quatro tópicos seguintes, vamos passar por eles 244 00:11:20,430 --> 00:11:21,600 de forma relativamente rápida. 245 00:11:21,600 --> 00:11:24,980 Então, não hesite em me parar a qualquer tempo, se você tiver quaisquer perguntas, 246 00:11:24,980 --> 00:11:27,900 se eles estão relacionados com o que eu cubro ou algo de palestra ou 247 00:11:27,900 --> 00:11:29,440 mesmo a partir do conjunto de problemas. 248 00:11:29,440 --> 00:11:31,690 Pare de me sempre que você precisar. 249 00:11:31,690 --> 00:11:34,370 Quando chegarmos ao fim, vamos começar a ir sobre o conjunto de problemas. 250 00:11:34,370 --> 00:11:38,100 >> Assim HTML significa HyperText Linguagem de marcação. 251 00:11:38,100 --> 00:11:41,360 Não é uma linguagem de programação. 252 00:11:41,360 --> 00:11:45,800 Tudo que faz é estrutura o seu conteúdo e também fornecer alguma metadados. 253 00:11:45,800 --> 00:11:52,340 Assim, por exemplo, presumivelmente, muitos você já usou o Facebook antes. 254 00:11:52,340 --> 00:11:56,810 E você pode incluir links, ou você pode colocar um link em seu status. 255 00:11:56,810 --> 00:11:59,070 >> E então, você vai perceber que ligação sempre tem uma bela imagem 256 00:11:59,070 --> 00:12:00,450 para ele e algum texto. 257 00:12:00,450 --> 00:12:03,040 Geralmente, isto é, alguns metadados para uma página web. 258 00:12:03,040 --> 00:12:05,250 E é metadados específicos do Facebook. 259 00:12:05,250 --> 00:12:07,780 E então, quando o Facebook é a leitura que página e inserir esse link, ele 260 00:12:07,780 --> 00:12:10,780 olha para os metadados específicos, por isso sabe o que imagem para mostrar, o que 261 00:12:10,780 --> 00:12:13,820 título a ser exibido, eo que texto do resumo para exibir. 262 00:12:13,820 --> 00:12:17,760 >> Assim, podemos incluir metadados com nossa página web usando HTML. 263 00:12:17,760 --> 00:12:21,190 E isso também nos ajuda estrutura o conteúdo, em geral, o que 264 00:12:21,190 --> 00:12:25,400 queremos ir onde. 265 00:12:25,400 --> 00:12:28,240 >> Tudo em HTML é um elemento. 266 00:12:28,240 --> 00:12:30,690 E elementos aqui mesmo - 267 00:12:30,690 --> 00:12:33,410 este CS50, o texto é o elemento. 268 00:12:33,410 --> 00:12:35,140 E tem algumas marcas. 269 00:12:35,140 --> 00:12:36,690 Tem esta uma tag. 270 00:12:36,690 --> 00:12:41,730 E notamos que há uma uma no no início e em seguida, uma barra de um, assim 271 00:12:41,730 --> 00:12:43,960 fechando a uma marcação no final. 272 00:12:43,960 --> 00:12:46,800 Às vezes, não há um diálogo aberto tag e uma tag perto. 273 00:12:46,800 --> 00:12:49,040 Há apenas uma coisa. 274 00:12:49,040 --> 00:12:50,640 >> Vamos ver um exemplo de que no próximo slide. 275 00:12:50,640 --> 00:12:52,640 Assim, você não precisa de um aberto e uma etiqueta de perto. 276 00:12:52,640 --> 00:12:59,570 Mas, para isso, estamos encerrando este Elemento CS50 no uma tag âncora. 277 00:12:59,570 --> 00:13:03,270 E, essencialmente, estas tags dizer o navegador o que fazer com 278 00:13:03,270 --> 00:13:04,700 o elemento em particular. 279 00:13:04,700 --> 00:13:07,380 >> Então, novamente, CS50 é o texto vamos ver. 280 00:13:07,380 --> 00:13:10,060 E isso vai ser um tipo de âncora. 281 00:13:10,060 --> 00:13:13,920 Anchor é utilizado essencialmente links para algo. 282 00:13:13,920 --> 00:13:16,000 Em particular, como você pode já diz, este é um 283 00:13:16,000 --> 00:13:18,950 link para a página inicial CS50. 284 00:13:18,950 --> 00:13:23,160 >> A próxima parte da tag - ou em geral, uma parte de tags são 285 00:13:23,160 --> 00:13:24,290 atributos. 286 00:13:24,290 --> 00:13:27,080 E vemos aqui, que a uma marcação tem um 287 00:13:27,080 --> 00:13:29,680 atributo, este atributo href. 288 00:13:29,680 --> 00:13:32,000 E eles modificar uma determinada marca. 289 00:13:32,000 --> 00:13:36,100 Na verdade, se você for a um dos sites ou as referências que lhe dei 290 00:13:36,100 --> 00:13:39,480 antes ou procurar a uma marca on-line, você vai notar que há uma tonelada de 291 00:13:39,480 --> 00:13:41,010 atributos potenciais. 292 00:13:41,010 --> 00:13:42,310 >> Este é provavelmente um dos mais comuns. 293 00:13:42,310 --> 00:13:46,090 Isso está me dizendo para criar um link para o site específico. 294 00:13:46,090 --> 00:13:50,260 E atribui geralmente são dadas, se não for dada exclusivamente, 295 00:13:50,260 --> 00:13:52,350 em pares chave-valor. 296 00:13:52,350 --> 00:13:55,380 >> Então aqui está a chave, href. 297 00:13:55,380 --> 00:13:57,320 E o valor é este aqui. 298 00:13:57,320 --> 00:14:01,960 E isso virá a calhar mais tarde, quando começar a usar algumas bibliotecas para 299 00:14:01,960 --> 00:14:07,280 nos ajudar a código em JavaScript ou escrever o conteúdo HTML. 300 00:14:07,280 --> 00:14:11,120 Nós somos muitas vezes vai ser - assim como nós faria conjunto suporte 0 e que 301 00:14:11,120 --> 00:14:12,340 nos daria algum valor. 302 00:14:12,340 --> 00:14:17,190 >> No futuro, nós vamos estar fazendo um monte de coisas como suporte algo href. 303 00:14:17,190 --> 00:14:21,180 E isso vai nos dar o valor da href, ou se deseja atualizar a href 304 00:14:21,180 --> 00:14:23,980 chave e, em seguida, dar-lhe um valor particular. 305 00:14:23,980 --> 00:14:28,915 Assim como com matrizes onde tivemos tecla 0 ou a tecla 1 ou tecla 2 ou mesmo com uma 306 00:14:28,915 --> 00:14:33,480 Tabela de Hash, também, com suas tabelas de hash assim, você provavelmente teve - ele 307 00:14:33,480 --> 00:14:35,790 era uma matriz, então a tecla 0, a tecla 1, tecla 2. 308 00:14:35,790 --> 00:14:38,480 >> Esse índice não, podemos pensar nisso como uma chave. 309 00:14:38,480 --> 00:14:40,180 E o valor é o que quer foi armazenado lá. 310 00:14:40,180 --> 00:14:42,760 Todos estes atributos são pares chave-valor. 311 00:14:42,760 --> 00:14:47,370 E isso vai ser importante para a mudança los ou atualizá-los ou 312 00:14:47,370 --> 00:14:51,020 inseri-los mais tarde. 313 00:14:51,020 --> 00:14:53,990 >> Finalmente, você já viu essa estrutura antes, mas este é o mais básico 314 00:14:53,990 --> 00:14:55,350 estrutura da página HTML. 315 00:14:55,350 --> 00:14:58,700 No topo, nós lhes dizemos que este é, de facto, em HTML. 316 00:14:58,700 --> 00:15:01,910 E depois temos um HTML aberto tag e uma tag HTML perto. 317 00:15:01,910 --> 00:15:04,940 Então, tudo dentro de este é o código HTML. 318 00:15:04,940 --> 00:15:08,960 >> Vemos a cabeça eo corpo. 319 00:15:08,960 --> 00:15:12,350 A cabeça do seu documento geralmente inclui o que? 320 00:15:12,350 --> 00:15:16,980 321 00:15:16,980 --> 00:15:20,995 Algum palpite para o que você colocar na cabeça? 322 00:15:20,995 --> 00:15:23,060 >> AUDIÊNCIA: Você coloca o título e estilo. 323 00:15:23,060 --> 00:15:23,790 >> JASON HIRSCHHORN: o título. 324 00:15:23,790 --> 00:15:26,110 Isso foi um grande palpite. 325 00:15:26,110 --> 00:15:27,200 Eu posso ter derrubado lo fora para o arquivo. 326 00:15:27,200 --> 00:15:28,150 Quais são algumas outras coisas? 327 00:15:28,150 --> 00:15:30,351 Mencionamos um deles que pode ir na cabeça. 328 00:15:30,351 --> 00:15:33,057 329 00:15:33,057 --> 00:15:35,225 >> AUDIÊNCIA: Ele disse, estilos. 330 00:15:35,225 --> 00:15:36,240 >> JASON HIRSCHHORN: Estilos - 331 00:15:36,240 --> 00:15:41,050 por isso, se você quiser ligar em um JavaScript ou até mesmo uma CSS, o que você está falando 332 00:15:41,050 --> 00:15:42,610 sobre quando você está falando sobre estilos. 333 00:15:42,610 --> 00:15:45,670 Outro arquivo, que pretende ligar em um fora de arquivos, que, provavelmente, vai 334 00:15:45,670 --> 00:15:46,920 na cabeça. 335 00:15:46,920 --> 00:15:48,660 336 00:15:48,660 --> 00:15:51,070 >> O que mais? 337 00:15:51,070 --> 00:15:52,960 Mencionamos um par de lâminas atrás uma das coisas que 338 00:15:52,960 --> 00:15:54,510 HTML pode fazer por você. 339 00:15:54,510 --> 00:15:58,180 340 00:15:58,180 --> 00:16:01,240 Ele pode fornecer - 341 00:16:01,240 --> 00:16:02,874 inicia-se com um H - 342 00:16:02,874 --> 00:16:03,820 >> AUDIÊNCIA: Metadados. 343 00:16:03,820 --> 00:16:06,170 >> JASON HIRSCHHORN: Metadados - então um monte dos metadados vai na cabeça, 344 00:16:06,170 --> 00:16:08,990 porque isso não precisa necessariamente para fazer parte do corpo de seu código. 345 00:16:08,990 --> 00:16:11,820 Isso é geralmente - o corpo é o conteúdo, o que alguém vê. 346 00:16:11,820 --> 00:16:14,210 E então eu só deu a resposta à minha próxima pergunta. 347 00:16:14,210 --> 00:16:17,770 Mas no corpo é geralmente o conteúdo que vai ser exibido 348 00:16:17,770 --> 00:16:19,750 na página web. 349 00:16:19,750 --> 00:16:26,120 >> Como veremos, sites complicados tendem a misturar ou alterar o que 350 00:16:26,120 --> 00:16:27,170 eles colocaram na cabeça e no corpo. 351 00:16:27,170 --> 00:16:30,360 Mas, geralmente, a cabeça contém coisas que o usuário não vai 352 00:16:30,360 --> 00:16:31,290 vê na tela. 353 00:16:31,290 --> 00:16:34,150 Ela liga em outros arquivos e fornece metadados. 354 00:16:34,150 --> 00:16:37,690 Considerando que, o corpo contém tudo o usuário vai ver. 355 00:16:37,690 --> 00:16:39,270 Alguma idéia do que essa marca significa p? 356 00:16:39,270 --> 00:16:41,660 >> AUDIÊNCIA: Parágrafo? 357 00:16:41,660 --> 00:16:42,780 >> AUDIÊNCIA: Print. 358 00:16:42,780 --> 00:16:44,120 >> AUDIÊNCIA: Não significa impressão. 359 00:16:44,120 --> 00:16:45,380 >> AUDIÊNCIA: Significa parágrafo? 360 00:16:45,380 --> 00:16:47,620 >> JASON HIRSCHHORN: Parágrafo - por isso este é um parágrafo. 361 00:16:47,620 --> 00:16:50,920 E esta tag p, eu poderia ter apenas digitado esta na tela e, em seguida, 362 00:16:50,920 --> 00:16:52,630 incluiu uma quebra de linha no final do mesmo. 363 00:16:52,630 --> 00:16:54,380 Alguém sabe como incluir uma quebra de linha? 364 00:16:54,380 --> 00:16:55,240 >> AUDIÊNCIA: pr - 365 00:16:55,240 --> 00:16:55,700 >> JASON HIRSCHHORN: pr - 366 00:16:55,700 --> 00:16:57,080 >> AUDIÊNCIA: Corte pr? 367 00:16:57,080 --> 00:17:00,120 >> JASON HIRSCHHORN: barra pr significa quebra de linha. 368 00:17:00,120 --> 00:17:03,270 Mas parágrafos têm específica formatação. 369 00:17:03,270 --> 00:17:06,060 E nós vamos chegar a formatação em um segundo, quando falamos de CSS. 370 00:17:06,060 --> 00:17:09,900 Mas tudo dentro dessas tags p terá alguma formatação padrão 371 00:17:09,900 --> 00:17:13,210 associado a ele, provavelmente, alguns espaçamento entre diferentes 372 00:17:13,210 --> 00:17:15,069 parágrafos. 373 00:17:15,069 --> 00:17:19,410 E vai ser uma maneira de diferenciar blocos de código. 374 00:17:19,410 --> 00:17:20,980 >> Quaisquer outras marcas - 375 00:17:20,980 --> 00:17:24,584 quais são as outras marcas que você já viu? 376 00:17:24,584 --> 00:17:26,609 >> JASON HIRSCHHORN: H1 através H6. 377 00:17:26,609 --> 00:17:28,460 h1 através h6, eo que é isso? 378 00:17:28,460 --> 00:17:31,560 >> AUDIÊNCIA: Ele vai denotar o quão grande e em negrito as letras são. 379 00:17:31,560 --> 00:17:32,650 >> JASON HIRSCHHORN: Direito, ele representa cabeçalho. 380 00:17:32,650 --> 00:17:34,960 E assim header1 é um grande cabeçalho. 381 00:17:34,960 --> 00:17:40,840 Ele provavelmente vai, por padrão, ser ousado, um tamanho da fonte grande, provavelmente centrada na 382 00:17:40,840 --> 00:17:44,030 na tela, todo o caminho até a h6, , que é um tamanho de fonte menor, menos 383 00:17:44,030 --> 00:17:44,780 enfatizado. 384 00:17:44,780 --> 00:17:50,290 Claro, você pode, você está em arquivo CSS ou em algum lugar no seu código - o que, 385 00:17:50,290 --> 00:17:53,830 novamente, nós vamos chegar a isso em um segundo - mudar o comportamento padrão 386 00:17:53,830 --> 00:17:55,780 de uma tag h1 é. 387 00:17:55,780 --> 00:18:01,040 >> Mas tenha em mente que o Chrome, Safari, Firefox, Internet Explorer todos têm 388 00:18:01,040 --> 00:18:04,030 padrão olha para um monte de estas tags padrão. 389 00:18:04,030 --> 00:18:07,110 Você pode, mais uma vez, sempre mudar como eles se parecem. 390 00:18:07,110 --> 00:18:09,955 Quaisquer outras marcas que todo mundo tem visto? 391 00:18:09,955 --> 00:18:10,350 Sim - 392 00:18:10,350 --> 00:18:11,530 >> AUDIÊNCIA: Um site div. 393 00:18:11,530 --> 00:18:15,830 >> JASON HIRSCHHORN: Uma tag div - div tag não tem qualquer formato interno, por 394 00:18:15,830 --> 00:18:21,850 si, que é usado para bloquear diferentes tipos de código. 395 00:18:21,850 --> 00:18:22,980 Quaisquer outras marcas? 396 00:18:22,980 --> 00:18:23,390 Sim. 397 00:18:23,390 --> 00:18:24,333 >> AUDIÊNCIA: li - 398 00:18:24,333 --> 00:18:24,850 >> JASON HIRSCHHORN: li - 399 00:18:24,850 --> 00:18:25,580 o que está li para? 400 00:18:25,580 --> 00:18:26,210 >> AUDIÊNCIA: List. 401 00:18:26,210 --> 00:18:26,930 >> AUDIÊNCIA: Lista 402 00:18:26,930 --> 00:18:29,510 >> JASON HIRSCHHORN: li é para os elementos da lista. 403 00:18:29,510 --> 00:18:30,720 Existem dois tipos de listas. 404 00:18:30,720 --> 00:18:31,970 Quais são os dois tipos? 405 00:18:31,970 --> 00:18:34,165 406 00:18:34,165 --> 00:18:35,806 >> AUDIÊNCIA: ordenada e não ordenada. 407 00:18:35,806 --> 00:18:37,780 >> JASON HIRSCHHORN: Ordenados e desordenadas - estandes tão ul 408 00:18:37,780 --> 00:18:38,560 para uma lista não ordenada. 409 00:18:38,560 --> 00:18:41,120 Isto é, se você quer uma bala apontar, uma lista de balas. 410 00:18:41,120 --> 00:18:43,180 Uma lista ordenada é uma lista numerada. 411 00:18:43,180 --> 00:18:47,930 E assim você vai fazer uma tag ul aberto e, em seguida, toneladas de elementos da lista e, em seguida 412 00:18:47,930 --> 00:18:50,450 fechar a marca ul. e que a vontade criar uma lista não ordenada. 413 00:18:50,450 --> 00:18:52,380 >> Vamos ver alguns exemplos de HTML em um pouco. 414 00:18:52,380 --> 00:18:55,800 Mas antes disso, eu quero começar a CSS. 415 00:18:55,800 --> 00:18:58,530 E CSS significa Cascading Folhas de estilo. 416 00:18:58,530 --> 00:19:03,010 E isso é muito intimamente relacionado para HTML, mas um pouco diferente. 417 00:19:03,010 --> 00:19:06,920 Isso ajuda você a formatar todo o conteúdo que as estruturas de HTML. 418 00:19:06,920 --> 00:19:14,940 >> Assim, em CSS, nós geralmente não queremos estilo de cada cabeçalho ou a cada 419 00:19:14,940 --> 00:19:17,250 única imagem ou a cada parágrafo único. 420 00:19:17,250 --> 00:19:21,210 Queremos estilo alguns elementos ou talvez um elemento específico. 421 00:19:21,210 --> 00:19:25,250 E a maneira como o estilo de um específico elemento é dar-lhe um ID. 422 00:19:25,250 --> 00:19:26,070 >> Portanto, este é um atributo. 423 00:19:26,070 --> 00:19:27,960 Ele tem uma chave e um valor. 424 00:19:27,960 --> 00:19:29,130 ID é a chave. 425 00:19:29,130 --> 00:19:30,220 Logo é o valor. 426 00:19:30,220 --> 00:19:32,410 Peguei logotipo de forma aleatória. 427 00:19:32,410 --> 00:19:36,780 E se você der algo um ID, geral, que só deve ser dado 428 00:19:36,780 --> 00:19:38,800 de um elemento. 429 00:19:38,800 --> 00:19:42,340 >> E então, na sua folha de estilo, você pode estilo que determinado elemento, no entanto 430 00:19:42,340 --> 00:19:44,090 você quer olhar. 431 00:19:44,090 --> 00:19:49,560 Se você quiser o estilo de um número de elementos, talvez seja uma certa classe 432 00:19:49,560 --> 00:19:51,310 de cabeçalhos, apenas alguns de seus cabeçalhos. 433 00:19:51,310 --> 00:19:56,780 Talvez seja um cabeçalho e uma imagem e um parágrafo que todos querem ser centrado. 434 00:19:56,780 --> 00:20:00,700 Então você pode dar a esses grupos de todos os elementos de uma classe. 435 00:20:00,700 --> 00:20:04,300 E você pode dar a classe estilos específicos. 436 00:20:04,300 --> 00:20:08,860 Então, uma identificação e uma classe são duas formas de quebrar o seu código, para que você possa ajudar a ser 437 00:20:08,860 --> 00:20:11,990 mais específico no que você estilo. 438 00:20:11,990 --> 00:20:13,830 >> Há três maneiras de pentear. 439 00:20:13,830 --> 00:20:17,530 O primeiro é, com este atributo de estilo. 440 00:20:17,530 --> 00:20:21,200 Então você vê, a chave estilo é estilo. 441 00:20:21,200 --> 00:20:24,370 O valor de estilo é realmente outra lista chave valor. 442 00:20:24,370 --> 00:20:26,570 >> Neste caso, eu escolhi uma chave, text-align. 443 00:20:26,570 --> 00:20:27,730 E eu disse, centro. 444 00:20:27,730 --> 00:20:30,280 Você deve estar se perguntando neste ponto, como é que eu sei sobre 445 00:20:30,280 --> 00:20:31,230 text-align. 446 00:20:31,230 --> 00:20:32,280 O que isso faz? 447 00:20:32,280 --> 00:20:35,350 Essa é uma ótima pergunta a fazer, e nós vamos chegar lá em um segundo. 448 00:20:35,350 --> 00:20:39,740 Então essa é uma maneira de denominar algo, apenas dar-lhe o atributo de estilo. 449 00:20:39,740 --> 00:20:43,490 >> Outra forma de denominar algo é - este é Akshar mencionado anteriormente. 450 00:20:43,490 --> 00:20:49,660 Você pode usar marcas de estilo e colocar esse na cabeça do seu documento HTML. 451 00:20:49,660 --> 00:20:52,220 Então você está basicamente dizendo: o conteúdo dentro aqui 452 00:20:52,220 --> 00:20:53,870 é algum conteúdo estilo. 453 00:20:53,870 --> 00:20:59,520 E o formato para isso é a coisa que você quer estilo e, em seguida, dentro de 454 00:20:59,520 --> 00:21:03,460 chaves, o par valor de chave de atributos que você quer dar a 455 00:21:03,460 --> 00:21:05,920 esse tipo particular de elemento. 456 00:21:05,920 --> 00:21:07,370 >> Por fim, e esta é a forma mais comum. 457 00:21:07,370 --> 00:21:10,320 E esta é a maneira que nós fazê-lo em conjunto p 7. 458 00:21:10,320 --> 00:21:12,370 É uma folha de estilo externa. 459 00:21:12,370 --> 00:21:14,370 Então você tem um arquivo css.. 460 00:21:14,370 --> 00:21:18,050 E dentro dele, você vê um monte de coisas que se parecem com isso, o nome 461 00:21:18,050 --> 00:21:22,730 de algum tipo de elemento ou um ID ou uma classe e, em seguida, dentro de encaracolado 462 00:21:22,730 --> 00:21:28,040 chaves, uma lista de pares de valores-chave. 463 00:21:28,040 --> 00:21:30,065 >> É claro que, se você criar um externo arquivo, você vai 464 00:21:30,065 --> 00:21:31,310 precisa incluí-lo - 465 00:21:31,310 --> 00:21:34,860 afiada incluir, que faria ser a analogia C - 466 00:21:34,860 --> 00:21:36,250 em seu arquivo HTML. 467 00:21:36,250 --> 00:21:39,820 Então você tem que incluir este código em seu arquivo HTML. 468 00:21:39,820 --> 00:21:46,080 Sendo este o nome do arquivo e assumindo que é no mesmo diretório. 469 00:21:46,080 --> 00:21:47,100 >> OK. 470 00:21:47,100 --> 00:21:48,200 Isso foi muito. 471 00:21:48,200 --> 00:21:52,440 E nós estamos indo agora para respirar e olhar em alguns, website de verdade e 472 00:21:52,440 --> 00:21:53,720 explorar esta mais. 473 00:21:53,720 --> 00:21:55,470 Mas antes de fazer isso, alguém tem alguma dúvida? 474 00:21:55,470 --> 00:22:00,830 475 00:22:00,830 --> 00:22:04,970 >> Então, se você quer fazer isso junto com me, podemos ir para o aparelho. 476 00:22:04,970 --> 00:22:08,950 E eu escolhi o home page CS50. 477 00:22:08,950 --> 00:22:10,020 Você pode fazer isso com qualquer site. 478 00:22:10,020 --> 00:22:13,070 Mas por que não começar com a página inicial CS50? 479 00:22:13,070 --> 00:22:14,650 >> Vamos atualizar. 480 00:22:14,650 --> 00:22:18,030 Na verdade, eu recomendo que você está fazendo isso junto comigo, porque o que nós 481 00:22:18,030 --> 00:22:22,720 vamos fazer agora vai ser extremamente útil para você, não só em 482 00:22:22,720 --> 00:22:24,450 P-Conjunto 7, mas em P-8 Conjunto bem. 483 00:22:24,450 --> 00:22:24,810 É. 484 00:22:24,810 --> 00:22:29,560 >> AUDIÊNCIA: Existe uma maneira de fazer comentários em HTML, sem o uso de PHP? 485 00:22:29,560 --> 00:22:31,130 >> JASON HIRSCHHORN: Sim, você pode fazer comentários em HTML. 486 00:22:31,130 --> 00:22:32,690 >> AUDIÊNCIA: Qual é a sintaxe? 487 00:22:32,690 --> 00:22:34,340 >> AUDIÊNCIA: Ponto de exclamação traço traço. 488 00:22:34,340 --> 00:22:36,125 >> AUDIÊNCIA: OK. 489 00:22:36,125 --> 00:22:37,100 >> JASON HIRSCHHORN: sim. 490 00:22:37,100 --> 00:22:38,350 Essa é a sintaxe. 491 00:22:38,350 --> 00:22:40,630 492 00:22:40,630 --> 00:22:41,900 Você pode fazer comentários em HTML. 493 00:22:41,900 --> 00:22:43,310 Você pode fazer comentários em PHP. 494 00:22:43,310 --> 00:22:46,590 >> Como você vai ver, comentar em HTML será ainda aparecem, quando olhamos para o 495 00:22:46,590 --> 00:22:49,960 Código-fonte HTML de um site específico. 496 00:22:49,960 --> 00:22:51,610 Portanto, este cs50.net. 497 00:22:51,610 --> 00:22:57,360 Se você clique direito no mais moderno navegadores em mais qualquer página, você vê 498 00:22:57,360 --> 00:22:58,820 o código fonte da página. 499 00:22:58,820 --> 00:23:01,480 Então, vamos fazer isso no CS50. 500 00:23:01,480 --> 00:23:05,060 >> E eis que, nós ver uma coisa gigante. 501 00:23:05,060 --> 00:23:07,420 CS50 realmente parece muito bom. 502 00:23:07,420 --> 00:23:08,920 Um monte de sites não vai olhar este bom. 503 00:23:08,920 --> 00:23:10,540 Se você vai para a página inicial do Google e abri-lo. 504 00:23:10,540 --> 00:23:11,960 Não vai olhar este bom. 505 00:23:11,960 --> 00:23:13,830 >> Mas você percebe que, na parte superior - 506 00:23:13,830 --> 00:23:16,650 este tipo de pequenos. 507 00:23:16,650 --> 00:23:17,900 Vamos fazer deste maior. 508 00:23:17,900 --> 00:23:22,660 509 00:23:22,660 --> 00:23:23,570 OK. 510 00:23:23,570 --> 00:23:26,660 No topo, DOCTYPE HTML, que é familiar. 511 00:23:26,660 --> 00:23:30,650 Em seguida, vemos a tag HTML aberta e a cabeça, aqui, tudo 512 00:23:30,650 --> 00:23:34,350 dessas meta tags. 513 00:23:34,350 --> 00:23:38,000 E você pode ver isso og, não vai entrar nisso agora. 514 00:23:38,000 --> 00:23:42,110 Mas tenho quase certeza de que esses seriam Facebook. 515 00:23:42,110 --> 00:23:42,900 >> Isso é realmente o Facebook. 516 00:23:42,900 --> 00:23:44,870 Eu acho que está para gráfico aberta. 517 00:23:44,870 --> 00:23:48,930 Então lembre-se, eu estava mencionando há Metadados específicos do Faceboook você pode 518 00:23:48,930 --> 00:23:49,800 dar a uma página. 519 00:23:49,800 --> 00:23:51,150 Isso é o que está aqui. 520 00:23:51,150 --> 00:23:54,580 >> Então, quando você ligar esta página no Facebook, a imagem que vai mostrar 521 00:23:54,580 --> 00:23:56,630 é esta imagem aqui. 522 00:23:56,630 --> 00:23:58,310 E você realmente vê que é Facebook, porque é 523 00:23:58,310 --> 00:23:59,470 a imagem do Facebook. 524 00:23:59,470 --> 00:24:00,880 >> Mas de qualquer forma, nós estamos chegando para o lado. 525 00:24:00,880 --> 00:24:03,220 Então, nós temos algumas tags de metadados aqui. 526 00:24:03,220 --> 00:24:05,570 Vemos o título CS50. 527 00:24:05,570 --> 00:24:09,830 E mais uma vez, o título é o que se passa aqui em cima na aba do navegador. 528 00:24:09,830 --> 00:24:14,770 Vemos isso está ligando em, aqui, um arquivo JavaScript externo. 529 00:24:14,770 --> 00:24:17,640 >> Nós não falamos sobre JavaScript muito, mas na próxima semana - e, certamente, se 530 00:24:17,640 --> 00:24:20,350 você está fazendo um conjunto de problemas com base na Web, você estará usando JavaScript. 531 00:24:20,350 --> 00:24:23,540 Isto é como você ligar no exterior JavaScript arquivos. 532 00:24:23,540 --> 00:24:31,970 Vemos aqui, finalmente, a CSS folha de estilo, que documenta estes 533 00:24:31,970 --> 00:24:32,830 estilos deste Código. 534 00:24:32,830 --> 00:24:37,190 >> Vamos realmente abrir isso e dar uma olhada muito rapidamente. 535 00:24:37,190 --> 00:24:38,440 Isso parece loucura. 536 00:24:38,440 --> 00:24:40,840 537 00:24:40,840 --> 00:24:42,790 Não há nenhuma maneira que eu seria capaz de ler. 538 00:24:42,790 --> 00:24:46,930 Então você pode realmente embora, se você tomar um olhar, você pode ver que tipo de 539 00:24:46,930 --> 00:24:48,650 existem - 540 00:24:48,650 --> 00:24:49,790 lá vamos nós. 541 00:24:49,790 --> 00:24:53,440 >> Isso parece algo que já vimos antes, cor de fundo, colocando- 542 00:24:53,440 --> 00:24:55,550 igual a algum valor vermelho-verde-azul. 543 00:24:55,550 --> 00:24:59,070 Este tipo de coisas não deve parecer que estrangeira, ainda que, quando se apresenta 544 00:24:59,070 --> 00:25:00,850 assim, ele pode ser um pouco esmagadora. 545 00:25:00,850 --> 00:25:03,340 Nós não vamos olhar para este arquivo CSS ou gastar muito tempo com isso, porque 546 00:25:03,340 --> 00:25:06,030 é, mais uma vez, muito difícil de ler. 547 00:25:06,030 --> 00:25:09,090 >> Vamos voltar a este Página HTML para CS50. 548 00:25:09,090 --> 00:25:10,930 E vamos rolar para o corpo. 549 00:25:10,930 --> 00:25:14,730 E dentro vemos essa tag div. 550 00:25:14,730 --> 00:25:18,370 Vemos um cabeçalho bem aqui. 551 00:25:18,370 --> 00:25:21,060 Vemos a tag âncora. 552 00:25:21,060 --> 00:25:26,050 >> E este elemento da lista é dada uma classe específica. 553 00:25:26,050 --> 00:25:28,370 E vemos que a classe repetido uma e outra vez. 554 00:25:28,370 --> 00:25:29,730 Aí está você Curtis. 555 00:25:29,730 --> 00:25:32,730 Há o comentário em HTML5. 556 00:25:32,730 --> 00:25:36,280 >> E, como você observou, ainda podemos ver -lo, mas ele não está aparecendo. 557 00:25:36,280 --> 00:25:37,960 É realmente muito interessante. 558 00:25:37,960 --> 00:25:40,760 Parece que esta lista pontuação elemento está comentada. 559 00:25:40,760 --> 00:25:45,110 Se formos para esta página, mais uma vez, ainda Aparece lá, tão interessante. 560 00:25:45,110 --> 00:25:47,830 >> Ah, é por isso, porque desta linha seguinte. 561 00:25:47,830 --> 00:25:50,680 562 00:25:50,680 --> 00:25:52,735 O que mais vemos de interesse? 563 00:25:52,735 --> 00:25:56,640 564 00:25:56,640 --> 00:26:00,180 O resto é mais confuso, em lidar com esta metade direita do 565 00:26:00,180 --> 00:26:03,280 site, que é um pouco pouco mais complexa. 566 00:26:03,280 --> 00:26:08,890 >> Então é isso que um pouco de HTML vai ser parecida. 567 00:26:08,890 --> 00:26:10,990 Para mim, porém, isso é um pouco avassaladora, e isso não faz 568 00:26:10,990 --> 00:26:12,350 me ajuda muito. 569 00:26:12,350 --> 00:26:16,560 No entanto, há algo que se, de fato, me ajudar muito. 570 00:26:16,560 --> 00:26:20,490 >> E isso é o que eu uso sempre que estou tentando descobrir como algo 571 00:26:20,490 --> 00:26:24,270 olha o jeito que ele faz, ou como pode I fazer alterações no meu site. 572 00:26:24,270 --> 00:26:29,280 E essa é uma ferramenta de desenvolvimento que está embutido no Chrome. 573 00:26:29,280 --> 00:26:33,960 Então, se você vai para este três bares direita aqui e ir até ferramentas, clique em 574 00:26:33,960 --> 00:26:40,120 Ferramentas de Desenvolvimento, uma pequena janela será aparecer na parte inferior da página. 575 00:26:40,120 --> 00:26:46,910 E, em particular, de cromo, uma vez que é maravilhoso, irá formatar esta janela e 576 00:26:46,910 --> 00:26:49,580 tomar o HTML e torná-la muito mais agradável para você. 577 00:26:49,580 --> 00:26:54,860 Então agora é realmente alguma dobrável HTML que você pode explorar para inspecionar 578 00:26:54,860 --> 00:26:56,620 os elementos da página. 579 00:26:56,620 --> 00:26:59,400 >> Se quisermos olhar para o corpo, ele realmente destaca. 580 00:26:59,400 --> 00:27:03,240 Quando se desloca sobre uma parte do HTML, para baixo nesta janela, ele será 581 00:27:03,240 --> 00:27:06,530 destacar a parte que está falando sobre na grande janela. 582 00:27:06,530 --> 00:27:10,800 Então deixe-me tentar de novo soprar esta um pouco. 583 00:27:10,800 --> 00:27:12,170 OK. 584 00:27:12,170 --> 00:27:13,550 >> Então, vamos abrir o corpo. 585 00:27:13,550 --> 00:27:17,280 E eu estou rolando sobre esta div esquerda. 586 00:27:17,280 --> 00:27:21,420 E você percebe que ele está destacando esta metade esquerda da tela. 587 00:27:21,420 --> 00:27:25,710 Então, vamos clicar em que e expandir isso. 588 00:27:25,710 --> 00:27:27,280 >> Dentro dela, parece que existem dois divs. 589 00:27:27,280 --> 00:27:29,790 Há essa primeira div. 590 00:27:29,790 --> 00:27:30,760 Eu não vejo que destacou. 591 00:27:30,760 --> 00:27:35,900 Eu não sei, mas parece que esta uma segunda, para a esquerda interior, é o conteúdo 592 00:27:35,900 --> 00:27:37,700 no lado esquerdo do ecrã. 593 00:27:37,700 --> 00:27:39,360 >> Então há essa coisa chamada de cabeçalho. 594 00:27:39,360 --> 00:27:41,890 Parece que está destacando a parte CS50. 595 00:27:41,890 --> 00:27:46,600 Se abrirmos que acima, vemos que é nada mais do que um cabeçalho. 596 00:27:46,600 --> 00:27:51,140 É dado um ID, e é dado o CS50 texto. 597 00:27:51,140 --> 00:27:57,240 >> Então, novamente, olhando para ele através deste console ou usando as ferramentas de desenvolvedor 598 00:27:57,240 --> 00:28:00,710 painel na parte inferior das marcas de tela explorar este site, espero, um 599 00:28:00,710 --> 00:28:02,990 muito menos intimidante e muito mais acessível. 600 00:28:02,990 --> 00:28:06,360 Ele também permite-nos compreender que Neste site, embora pareça muito 601 00:28:06,360 --> 00:28:09,210 bonita e agradável, não é tanto assim mais do que o que você vai ser 602 00:28:09,210 --> 00:28:10,430 fazendo no Conjunto de Problemas 7. 603 00:28:10,430 --> 00:28:13,080 E isto está totalmente dentro sua capacidade de criar. 604 00:28:13,080 --> 00:28:14,110 >> Se queremos - 605 00:28:14,110 --> 00:28:18,270 outra coisa legal sobre o uso desses ferramentas é, se você clique direito sobre o 606 00:28:18,270 --> 00:28:22,270 título, você pode editar o código HTML. 607 00:28:22,270 --> 00:28:25,660 Então, vamos chamá-lo de Jason. 608 00:28:25,660 --> 00:28:28,990 E agora você vai perceber que eu mudei o HTML nesta página. 609 00:28:28,990 --> 00:28:31,020 >> Claro, eu não mudaram -lo permanentemente. 610 00:28:31,020 --> 00:28:34,570 Se eu atualizar meu navegador, então seria voltar para o HTML original. 611 00:28:34,570 --> 00:28:38,860 Mas às vezes eu quero depurar o meu código, e eu não quero olhar apenas tenho a minha 612 00:28:38,860 --> 00:28:41,370 janela gedit e tentar entender o que está acontecendo. 613 00:28:41,370 --> 00:28:42,705 >> Eu quero ver o que vai acontecer ao vivo. 614 00:28:42,705 --> 00:28:45,880 Então, eu vou editar um código como este e obter do jeito que eu quero que ele veja. 615 00:28:45,880 --> 00:28:47,960 E então eu vou fazer o mudanças no meu código. 616 00:28:47,960 --> 00:28:50,010 >> E eu acho que é muito mais fácil quando você pode fazer as coisas 617 00:28:50,010 --> 00:28:52,400 instantaneamente, assim. 618 00:28:52,400 --> 00:28:58,410 Diga, novamente, queremos fazer uma outra chance, porque nós estamos explorando com 619 00:28:58,410 --> 00:29:00,340 HTML e CSS no momento. 620 00:29:00,340 --> 00:29:02,600 Posso editar o HTML agora. 621 00:29:02,600 --> 00:29:06,680 E eu estou indo para incluir um link. 622 00:29:06,680 --> 00:29:10,650 >> Então, eu vou mudar a casa de CS50 página, por isso ele vai ligar para - 623 00:29:10,650 --> 00:29:12,060 digamos - a minha home page. 624 00:29:12,060 --> 00:29:16,700 Qual é o nome, se alguém lembra, ou qual é o atributo que eu quero dar 625 00:29:16,700 --> 00:29:18,850 a um guia de âncora quando eu quero que a ligação em outro lugar? 626 00:29:18,850 --> 00:29:19,562 >> AUDIÊNCIA: href? 627 00:29:19,562 --> 00:29:20,812 >> JASON HIRSCHHORN: href - 628 00:29:20,812 --> 00:29:32,520 629 00:29:32,520 --> 00:29:35,750 Então, agora, você vai ver que há é um sublinhado sob Jason. 630 00:29:35,750 --> 00:29:40,170 Isso porque o Chrome, por padrão, âncoras dá um sublinhado. 631 00:29:40,170 --> 00:29:41,990 Você provavelmente já viu isso antes quando você foi para uma página web. 632 00:29:41,990 --> 00:29:44,200 Coisas que são as ligações são sublinhado e em azul. 633 00:29:44,200 --> 00:29:47,300 O estilo padrão para um link é geralmente sublinham 634 00:29:47,300 --> 00:29:48,830 e colocá-lo em azul. 635 00:29:48,830 --> 00:29:50,050 >> Se eu não gosto disso, Eu posso mudar isso. 636 00:29:50,050 --> 00:29:51,220 E nós vamos mudá-lo em um segundo. 637 00:29:51,220 --> 00:29:54,660 Mas agora, também notar que, se eu passar o mouse por causa disso, na parte inferior esquerda do 638 00:29:54,660 --> 00:29:58,580 tela, logo acima dos elementos nominativos é o link que eu dei. 639 00:29:58,580 --> 00:30:03,080 >> Então, se eu fiz clique sobre isso - e podemos clique direito sobre isso, abra uma nova aba. 640 00:30:03,080 --> 00:30:04,520 Esta não é realmente a minha página inicial. 641 00:30:04,520 --> 00:30:06,700 É apenas o meu nome. 642 00:30:06,700 --> 00:30:07,210 Lá você vai. 643 00:30:07,210 --> 00:30:10,440 Nós agora transformá-lo em um link. 644 00:30:10,440 --> 00:30:13,220 >> Vamos explorar algumas CSS também. 645 00:30:13,220 --> 00:30:15,680 A coisa linda - e eu vou fazem deste um pouco menor - cerca de 646 00:30:15,680 --> 00:30:19,480 este console é que folha CSS louco vimos antes, que foi muito 647 00:30:19,480 --> 00:30:24,130 difícil de analisar, já está muito bem estabelecidas para nós no lado da mão esquerda 648 00:30:24,130 --> 00:30:25,270 deste painel. 649 00:30:25,270 --> 00:30:27,230 Assim, podemos olhar. 650 00:30:27,230 --> 00:30:33,690 E se expandir este guia estilos, nós pode ver todos os diferentes estilos 651 00:30:33,690 --> 00:30:37,940 que estão associadas com, neste caso, este elemento particular, esta 652 00:30:37,940 --> 00:30:39,700 elemento link. 653 00:30:39,700 --> 00:30:44,240 >> Se fizermos a guia estilos compostos, que apenas nos mostra, não onde tudo 654 00:30:44,240 --> 00:30:47,450 vem, mas, essencialmente, todos estes estilos que estão operando em 655 00:30:47,450 --> 00:30:51,220 este elemento em particular agora. 656 00:30:51,220 --> 00:30:55,050 E vamos dizer, nós queremos para mudá-la um pouco. 657 00:30:55,050 --> 00:30:58,870 658 00:30:58,870 --> 00:31:02,740 Então, isso é todos os estilos que são operando sobre este elemento particular. 659 00:31:02,740 --> 00:31:04,800 Diga queremos mudá-lo, porque nós quero ver como algo parece. 660 00:31:04,800 --> 00:31:06,050 E estamos apenas brincando em torno de agora. 661 00:31:06,050 --> 00:31:08,720 Ou queremos testar alguma coisa, antes de escrevê-lo no código e empurrando 662 00:31:08,720 --> 00:31:10,150 lo e torná-lo viver. 663 00:31:10,150 --> 00:31:11,780 >> Nós podemos ir para a aba estilos. 664 00:31:11,780 --> 00:31:14,270 E na primeira caixa que diz, element.style. 665 00:31:14,270 --> 00:31:17,020 E aqui, você pode inserir, você pode adicionar alguma coisa. 666 00:31:17,020 --> 00:31:18,550 >> Então eu quero - 667 00:31:18,550 --> 00:31:22,360 vamos para o meu link eo definir a cor do fundo. 668 00:31:22,360 --> 00:31:25,830 E ele realmente AutoPreenchimento isso por você, todas as possíveis propriedades. 669 00:31:25,830 --> 00:31:29,360 Cor de fundo, e eu quero para fazer essa azul. 670 00:31:29,360 --> 00:31:31,520 Blus não é uma palavra. 671 00:31:31,520 --> 00:31:32,400 O azul é uma palavra. 672 00:31:32,400 --> 00:31:34,490 >> Será que eu vê-lo subir? 673 00:31:34,490 --> 00:31:35,800 Oh, porque é que ele está no href? 674 00:31:35,800 --> 00:31:36,550 OK. 675 00:31:36,550 --> 00:31:40,220 Então, eu não vejo nenhuma mudança aqui. 676 00:31:40,220 --> 00:31:45,100 E isso porque, se destacam o link, você notará que o link 677 00:31:45,100 --> 00:31:48,430 não é efectivamente controlar a propriedades deste elemento específico. 678 00:31:48,430 --> 00:31:52,430 É, na verdade, se abrir o link, este cabeçalho aqui que é 679 00:31:52,430 --> 00:31:53,590 controlar o que parece. 680 00:31:53,590 --> 00:31:56,380 >> Então, se eu quiser fazer o plano de fundo azul, eu realmente tenho que mudar 681 00:31:56,380 --> 00:31:59,640 cor do fundo no elemento cabeçalho. 682 00:31:59,640 --> 00:32:02,700 E agora vemos que o fundo é azul. 683 00:32:02,700 --> 00:32:06,770 >> Então, novamente, isso rapidamente pode estar acontecendo através deste material muito rapidamente. 684 00:32:06,770 --> 00:32:08,580 Mas isso é essencialmente o que você vai estar fazendo. 685 00:32:08,580 --> 00:32:10,860 Não é no Conjunto de Problemas 7, mas certamente quando você está 686 00:32:10,860 --> 00:32:12,080 codificação na web. 687 00:32:12,080 --> 00:32:12,360 >> OK. 688 00:32:12,360 --> 00:32:13,780 Eu quero fazer o fundo azul. 689 00:32:13,780 --> 00:32:16,180 Mesmo que, neste caso, azul parece muito feio. 690 00:32:16,180 --> 00:32:17,740 Eu posso ir aqui, brincar. 691 00:32:17,740 --> 00:32:20,515 Vejo que mudá-lo para o azul não funciona no a. 692 00:32:20,515 --> 00:32:26,710 Eu tenho que realmente alterar o cabeçalho elemento de incluir o azul 693 00:32:26,710 --> 00:32:28,200 fundo. 694 00:32:28,200 --> 00:32:34,450 >> E então, se então eu vou voltar para o meu CSS arquivo, como faço para realmente definir esta 695 00:32:34,450 --> 00:32:37,520 fundo a ser azul e fazer esta vara mudança? 696 00:32:37,520 --> 00:32:44,840 Porque se notar se eu atualizar a página, todas as alterações que fiz se foram. 697 00:32:44,840 --> 00:32:47,220 Então eu percebi, OK, a minha fundo é azul. 698 00:32:47,220 --> 00:32:51,260 >> Eu preciso ir para aquele elemento header1 e alterar cor de fundo para azul. 699 00:32:51,260 --> 00:32:52,710 Como posso realmente fazer essa mudança? 700 00:32:52,710 --> 00:32:57,040 Bem, lembre-se que, se entrar daqui, este cabeçalho, o 701 00:32:57,040 --> 00:32:59,280 título tem um ID. 702 00:32:59,280 --> 00:33:00,890 E isso é o título. 703 00:33:00,890 --> 00:33:09,010 >> E assim, em nosso arquivo CSS, podemos dizer, OK, levar nada com ID de título e 704 00:33:09,010 --> 00:33:11,330 dar-lhe essa propriedade adicional. 705 00:33:11,330 --> 00:33:18,010 Como é que vamos referenciar algo com o ID do título, todas as idéias, ou qualquer 706 00:33:18,010 --> 00:33:24,406 sei como é que faz referência IDs em nosso arquivo CSS? 707 00:33:24,406 --> 00:33:26,290 >> Um hash, que é exatamente correto. 708 00:33:26,290 --> 00:33:28,710 E você tem uma dica do que aqui. 709 00:33:28,710 --> 00:33:32,810 Então, em algum lugar neste arquivo CSS, há esta linha de código - 710 00:33:32,810 --> 00:33:34,150 # Esquerda # left-interior título # header #. 711 00:33:34,150 --> 00:33:36,810 712 00:33:36,810 --> 00:33:40,590 E isso está dando margem inferior, que define a margem inferior do presente 713 00:33:40,590 --> 00:33:42,220 determinado elemento. 714 00:33:42,220 --> 00:33:46,580 >> Bem, se eu quisesse mudar isso, Gostaria de ir para esse arquivo CSS. 715 00:33:46,580 --> 00:33:49,510 E eu poderia encontrar este ou parte do arquivo CSS. 716 00:33:49,510 --> 00:33:50,300 Ou eu poderia escrever a minha própria. 717 00:33:50,300 --> 00:33:54,670 >> Eu poderia fazer de hash título encaracolado cinta e em seguida, azul cor de cólon 718 00:33:54,670 --> 00:33:57,250 ponto e vírgula e perto que chaveta. 719 00:33:57,250 --> 00:34:02,790 E que iria mudar o fundo cor deste elemento para azul. 720 00:34:02,790 --> 00:34:06,690 A razão que eles dão-lhe muitos aqui é isso, é necessário, neste caso, 721 00:34:06,690 --> 00:34:08,690 porque título é uma identificação única. 722 00:34:08,690 --> 00:34:11,190 >> Mas o que você pode fazer é coisas ninho. 723 00:34:11,190 --> 00:34:14,760 Então, isso está dizendo: OK, vá para a esquerda. 724 00:34:14,760 --> 00:34:15,350 Isso é muito pequena. 725 00:34:15,350 --> 00:34:16,150 Peço desculpas por isso. 726 00:34:16,150 --> 00:34:17,750 >> Mas ir para a coisa com ID esquerda. 727 00:34:17,750 --> 00:34:20,420 Dentro disso, olhar para o coisa com ID esquerda interior. 728 00:34:20,420 --> 00:34:22,630 Dentro desse olhar, olhar para a coisa com cabeçalho ID. 729 00:34:22,630 --> 00:34:27,560 Dentro disso, olhar para a coisa ID título e mudar o título de identificação. 730 00:34:27,560 --> 00:34:29,120 Portanto, esta é apenas uma maneira de coisas de nidificação. 731 00:34:29,120 --> 00:34:32,719 Algumas pessoas gostam de ninho, porque torna-se um pouco mais claro. 732 00:34:32,719 --> 00:34:37,980 >> Você vai ver por aqui também, né aqui, não há hash. 733 00:34:37,980 --> 00:34:39,449 É só H1. 734 00:34:39,449 --> 00:34:44,060 Isso porque h1 é dada a nome de uma marca genérica. 735 00:34:44,060 --> 00:34:48,080 E há algumas propriedades CSS associada a cada h1. 736 00:34:48,080 --> 00:34:51,889 Então, se eu encontrei um outro h1 nesta página, Também gostaria de ver que este estilo era 737 00:34:51,889 --> 00:34:54,280 aplicadas a ele também. 738 00:34:54,280 --> 00:34:59,290 >> Se eu quisesse aplicar um estilo a uma classe, como faço para fazer referência a uma classe ou 739 00:34:59,290 --> 00:35:02,469 falar de uma classe em um arquivo CSS? 740 00:35:02,469 --> 00:35:03,315 >> AUDIÊNCIA: Dot. 741 00:35:03,315 --> 00:35:05,340 >> JASON HIRSCHHORN: É com um ponto. 742 00:35:05,340 --> 00:35:08,630 Então, vamos voltar a esta página antes. 743 00:35:08,630 --> 00:35:11,160 Se eu fizer hash de identificação. 744 00:35:11,160 --> 00:35:14,760 Isso está mudando o estilo da coisa com ID. 745 00:35:14,760 --> 00:35:21,390 Ou muito, se eu fizer logotipo de hash, que é encontrar a coisa com o ID do logotipo 746 00:35:21,390 --> 00:35:24,010 e dando-lhe um estilo CSS particular. 747 00:35:24,010 --> 00:35:28,280 >> Se eu fizer alguma coisa. Top, que está encontrando tudo com a classe de topo e 748 00:35:28,280 --> 00:35:30,190 mudando seus estilos. 749 00:35:30,190 --> 00:35:35,950 Se eu simplesmente H1, que encontra cada h1 individuais e lhe dá o que quer que 750 00:35:35,950 --> 00:35:37,940 estilo que eu quero dar-lhe. 751 00:35:37,940 --> 00:35:43,260 Se eu fizer espaço h1 e depois. Topo. 752 00:35:43,260 --> 00:35:47,670 Isso vai encontrar todas as h1s e depois todos aqueles com a classe de topo e 753 00:35:47,670 --> 00:35:51,690 então só mudar esses estilos para o que eu quero dar. 754 00:35:51,690 --> 00:35:54,600 >> E mais uma vez, poderíamos ter escrito algumas dessas por conta própria. 755 00:35:54,600 --> 00:35:55,790 Mas não teria chegado tão longe. 756 00:35:55,790 --> 00:35:59,180 Muito melhor, parece que realmente ir em um site real ao vivo e ver como 757 00:35:59,180 --> 00:36:02,800 eles fazem isso e olhar para toda a coisas fantásticas que você começa a fazer. 758 00:36:02,800 --> 00:36:06,570 >> Vejamos mais um website antes de seguir em frente. 759 00:36:06,570 --> 00:36:10,150 E este é um que você provavelmente vai se familiarizar com. 760 00:36:10,150 --> 00:36:12,310 Este é CS50 Finanças. 761 00:36:12,310 --> 00:36:16,120 Então, novamente, você pode realmente entrar e observar este arquivo CSS em seu 762 00:36:16,120 --> 00:36:19,390 computador, porque você baixou este Arquivo CSS, se você baixou o 763 00:36:19,390 --> 00:36:20,270 conjunto de problemas. 764 00:36:20,270 --> 00:36:26,850 >> Nós podemos ir para Ferramentas e Ferramentas de Desenvolvimento. 765 00:36:26,850 --> 00:36:30,280 E vemos um layout HTML muito mais simples. 766 00:36:30,280 --> 00:36:32,020 Temos superior, central e inferior. 767 00:36:32,020 --> 00:36:34,490 E, novamente, algo que deve ser familiarizado, porque você olhou 768 00:36:34,490 --> 00:36:37,680 através do código de distribuição para definir problema desta semana. 769 00:36:37,680 --> 00:36:43,360 >> No topo está, por código, uma única imagem chamado. 770 00:36:43,360 --> 00:36:47,170 E essa é a fonte da imagem. 771 00:36:47,170 --> 00:36:52,170 Digamos que eu terminar tudo o que Eu queria para Conjunto de Problemas 7. 772 00:36:52,170 --> 00:36:55,500 E ele está funcionando corretamente, mas Eu quero mudar seu visual. 773 00:36:55,500 --> 00:36:58,900 E eu quero mudar o fundo da parte superior da página para, 774 00:36:58,900 --> 00:37:01,000 por exemplo, azul. 775 00:37:01,000 --> 00:37:04,860 Se fosse comigo, eu viria em aqui e descobrir, certo que 776 00:37:04,860 --> 00:37:05,890 eu quero mudar. 777 00:37:05,890 --> 00:37:08,700 >> Vamos ver, div top ID, que a aparência como a parte superior da página. 778 00:37:08,700 --> 00:37:09,910 Então vamos lá. 779 00:37:09,910 --> 00:37:13,940 Vamos tentar mudar o cor de fundo. 780 00:37:13,940 --> 00:37:16,360 Vamos fazer Alice azul, porque isso é um mais agradável. 781 00:37:16,360 --> 00:37:18,010 >> E você vai perceber que - 782 00:37:18,010 --> 00:37:19,190 você provavelmente não pode ver isso. 783 00:37:19,190 --> 00:37:23,430 Mas há uma luz azul, ao lado do logotipo CS50. 784 00:37:23,430 --> 00:37:25,810 Vamos mudá-lo em vez de vermelho. 785 00:37:25,810 --> 00:37:28,790 E você vai perceber agora eu só mudou a cor de fundo para vermelho. 786 00:37:28,790 --> 00:37:37,050 >> Então agora eu iria para o meu arquivo CSS e digite # top paren encaracolados aqui. 787 00:37:37,050 --> 00:37:42,170 Você pode ver o código de direito aqui, chaveta. 788 00:37:42,170 --> 00:37:44,530 E então, eu gostaria de acrescentar fundo cor, vermelho. 789 00:37:44,530 --> 00:37:47,500 E então, não haveria ser uma chaveta. 790 00:37:47,500 --> 00:37:52,230 Então é assim que eu iria explorar e experimentar com formatação no CS50 791 00:37:52,230 --> 00:37:53,070 Finanças local. 792 00:37:53,070 --> 00:37:55,060 >> Eu poderia fazê-lo aqui e teste -lo em meu navegador. 793 00:37:55,060 --> 00:37:58,130 E então, eu poderia ir para o meu código real e fazer as mudanças que irão 794 00:37:58,130 --> 00:38:01,940 realmente ir ao vivo e que as pessoas realmente ver, se eles estavam a chegar a 795 00:38:01,940 --> 00:38:04,280 meu site específico. 796 00:38:04,280 --> 00:38:05,390 >> OK. 797 00:38:05,390 --> 00:38:06,850 Isso foi muito. 798 00:38:06,850 --> 00:38:09,380 Peço desculpas por passar por ele tão rapidamente. 799 00:38:09,380 --> 00:38:12,560 Alguém tem alguma dúvida em tudo sobre HTML ou CSS? 800 00:38:12,560 --> 00:38:15,830 801 00:38:15,830 --> 00:38:24,728 >> AUDIÊNCIA: Você pode apenas passar por cima de como você ligada que se tornou Jason, de novo? 802 00:38:24,728 --> 00:38:26,180 >> JASON HIRSCHHORN: O que que quer dizer ligado? 803 00:38:26,180 --> 00:38:29,765 >> AUDIÊNCIA: Você forneceu um link para outro site, utilizando a âncora. 804 00:38:29,765 --> 00:38:32,980 >> JASON HIRSCHHORN: Então você está perguntando: apenas genericamente, como você faz um link? 805 00:38:32,980 --> 00:38:33,560 >> AUDIÊNCIA: Yeah. 806 00:38:33,560 --> 00:38:34,150 >> JASON HIRSCHHORN: OK. 807 00:38:34,150 --> 00:38:35,575 O código para fazer uma ligação - 808 00:38:35,575 --> 00:38:38,180 809 00:38:38,180 --> 00:38:40,590 >> AUDIÊNCIA: Não, como no HTML. 810 00:38:40,590 --> 00:38:43,140 >> JASON HIRSCHHORN: Aqui em baixo, você quer dizer? 811 00:38:43,140 --> 00:38:46,960 Então, se eu quiser incluir um link em algum lugar, por exemplo, este é o HTML no meu 812 00:38:46,960 --> 00:38:50,210 página aqui. 813 00:38:50,210 --> 00:38:51,010 Este é o código HTML. 814 00:38:51,010 --> 00:38:53,720 Talvez seja aberto em um arquivo, index.html. 815 00:38:53,720 --> 00:38:56,100 Eu ir dentro 816 00:38:56,100 --> 00:38:58,990 >> Vamos ter este autor John Ligação Harvard para alguma coisa. 817 00:38:58,990 --> 00:39:02,230 Então, vamos editar tudo isso como HTML. 818 00:39:02,230 --> 00:39:08,480 Tudo que você faz é incluir a um, de forma entre parênteses um suporte de perto a 819 00:39:08,480 --> 00:39:12,700 começando, em seguida, suporte de barra um suporte de perto no final. 820 00:39:12,700 --> 00:39:13,930 >> Então agora eu incluí uma marca de âncora. 821 00:39:13,930 --> 00:39:15,475 E, na verdade, se você clicar fora disso, ele vai agora 822 00:39:15,475 --> 00:39:22,110 formatá-lo editar como HTML. 823 00:39:22,110 --> 00:39:24,020 E dizer, queremos vinculá-lo. 824 00:39:24,020 --> 00:39:25,760 Nós tínhamos-lhe o atributo href. 825 00:39:25,760 --> 00:39:27,010 E nós dizemos - 826 00:39:27,010 --> 00:39:42,600 827 00:39:42,600 --> 00:39:47,600 >> E agora, como você percebe, de direitos de autor John Harvard é azul. 828 00:39:47,600 --> 00:39:50,870 E quando eu rolar ele, agora é um link. 829 00:39:50,870 --> 00:39:53,140 Assim, você pode escrever o código. 830 00:39:53,140 --> 00:39:57,030 Você pode cercar praticamente qualquer coisa que você quer em uma marca de âncora e transformá-lo 831 00:39:57,030 --> 00:39:57,700 em um link. 832 00:39:57,700 --> 00:39:58,246 >> AUDIÊNCIA: OK. 833 00:39:58,246 --> 00:39:58,520 Entendi. 834 00:39:58,520 --> 00:40:01,300 >> JASON HIRSCHHORN: E se eu não queria ele - é claro, às vezes as pessoas tendem 835 00:40:01,300 --> 00:40:04,090 para pensar essas coisas que só olham azul e sublinhado são genericamente 836 00:40:04,090 --> 00:40:05,860 não é o caminho mais bonito para fazer um link. 837 00:40:05,860 --> 00:40:11,380 Então, se eu vir aqui, você vê que, em algum lugar em um arquivo CSS, há 838 00:40:11,380 --> 00:40:14,500 escrevi este um e, em seguida, duas chaves. 839 00:40:14,500 --> 00:40:20,700 Então, vamos dizer que, para as ligações, eu não quero que eles se tornam azul, em vez I 840 00:40:20,700 --> 00:40:23,645 quer a cor de um link para ser este bom magenta. 841 00:40:23,645 --> 00:40:28,320 842 00:40:28,320 --> 00:40:30,640 >> Vamos dar-lhe a cor. 843 00:40:30,640 --> 00:40:34,060 844 00:40:34,060 --> 00:40:35,110 Vamos escolher magenta. 845 00:40:35,110 --> 00:40:38,440 Agora, todos os links na minha página tem tornar esta bela cor de magenta. 846 00:40:38,440 --> 00:40:40,170 Algumas pessoas não gostam de cores em tudo. 847 00:40:40,170 --> 00:40:41,340 Algumas pessoas não gostam de sublinhados. 848 00:40:41,340 --> 00:40:42,510 Você começa a escolher. 849 00:40:42,510 --> 00:40:44,990 >> Com links, você pode estilizar como eles olhar uma vez que você visitou. 850 00:40:44,990 --> 00:40:47,820 Como você verá em um monte de páginas, ligações ficar roxo de você visitá-los. 851 00:40:47,820 --> 00:40:49,190 Você pode mudar essa cor também. 852 00:40:49,190 --> 00:40:49,450 É. 853 00:40:49,450 --> 00:40:51,790 >> AUDIÊNCIA: Então você alterá-lo para cada link. 854 00:40:51,790 --> 00:40:56,310 Mas se você só queria fazer essa ligação si mesmo, se você acabou de fazer no ID 855 00:40:56,310 --> 00:40:58,720 inferior ou algo assim? 856 00:40:58,720 --> 00:41:01,070 >> JASON HIRSCHHORN: Tão grande questão. 857 00:41:01,070 --> 00:41:05,090 Como você percebeu aqui, eu mudei alguns parte do CSS que se aplica a 858 00:41:05,090 --> 00:41:11,530 tudo isso é um A. Se eu quisesse apenas fazer esse link em baixo, eu 859 00:41:11,530 --> 00:41:14,500 iria para o meu arquivo de CSS e, provavelmente, fazer exatamente como você disse, de hash 860 00:41:14,500 --> 00:41:16,040 espaço um fundo. 861 00:41:16,040 --> 00:41:18,400 E isso me daria Como todos na parte inferior. 862 00:41:18,400 --> 00:41:30,720 >> Ou eu poderia, alternativamente, dar-lhe um ID único e depois é só fazer ligação hash. 863 00:41:30,720 --> 00:41:32,050 E isso me permitiria para mudar isso. 864 00:41:32,050 --> 00:41:36,170 No entanto, apenas distribuindo IDs à ​​toa é geralmente um mau 865 00:41:36,170 --> 00:41:37,730 prática, porque aqueles deve ser exclusivo. 866 00:41:37,730 --> 00:41:40,940 E quanto mais você tem aqueles, que pode ficar um pouco confuso. 867 00:41:40,940 --> 00:41:41,270 É. 868 00:41:41,270 --> 00:41:43,725 >> AUDIÊNCIA: Você pode dar o mesmo ID para vários proprietários? 869 00:41:43,725 --> 00:41:45,820 >> JASON HIRSCHHORN: Tecnicamente, sim. 870 00:41:45,820 --> 00:41:50,700 Nada vai impedi-lo, mas você não deve Você deve dar-lhe uma classe. 871 00:41:50,700 --> 00:41:55,330 872 00:41:55,330 --> 00:41:57,655 OK, quaisquer outras perguntas sobre HTML ou CSS? 873 00:41:57,655 --> 00:42:05,660 874 00:42:05,660 --> 00:42:06,310 >> OK. 875 00:42:06,310 --> 00:42:09,950 Vamos passar para PHP. 876 00:42:09,950 --> 00:42:10,575 Oh, sim. 877 00:42:10,575 --> 00:42:13,800 >> AUDIÊNCIA: O que é sobre estes sites que significa que podemos editar 878 00:42:13,800 --> 00:42:15,440 los antes de atualizar. 879 00:42:15,440 --> 00:42:18,270 Mas uma vez que atualizá-la reverte voltar para o HTML inicial? 880 00:42:18,270 --> 00:42:19,900 >> JASON HIRSCHHORN: Ótima pergunta - 881 00:42:19,900 --> 00:42:24,810 por isso, quando você carregou este página web, é HTML. 882 00:42:24,810 --> 00:42:25,900 E é JavaScript. 883 00:42:25,900 --> 00:42:29,060 O PHP é executado para nos dar tudo o que tipo de site que vemos. 884 00:42:29,060 --> 00:42:33,130 E isso criou um pouco de HTML, alguns JavaScript, e alguns CSS. 885 00:42:33,130 --> 00:42:35,990 E que agora está acessível pelo nosso computador. 886 00:42:35,990 --> 00:42:40,700 >> E uma cópia desses arquivos é salvo localmente no nosso computador, 887 00:42:40,700 --> 00:42:41,910 por enquanto. 888 00:42:41,910 --> 00:42:44,030 Assim, podemos editar essa cópia local. 889 00:42:44,030 --> 00:42:46,530 Mas, claro, não está editando a cópia do servidor. 890 00:42:46,530 --> 00:42:49,420 >> E quando a gente atualizar a página, temos uma outra cópia do servidor. 891 00:42:49,420 --> 00:42:51,250 E assim vemos as coisas de volta como eram. 892 00:42:51,250 --> 00:42:55,200 Se fomos capazes, a partir daqui, para editar o site oficial, teríamos um monte 893 00:42:55,200 --> 00:42:55,800 de problemas. 894 00:42:55,800 --> 00:42:58,670 >> AUDIÊNCIA: Sim, para que possamos ler e escrever essa cópia. 895 00:42:58,670 --> 00:43:00,140 >> JASON HIRSCHHORN: Certo. 896 00:43:00,140 --> 00:43:04,380 Nós só estamos fazendo mudanças locais aqui, mas mais uma vez, muito útil para explorar, 897 00:43:04,380 --> 00:43:05,690 muitas vezes. 898 00:43:05,690 --> 00:43:08,900 Quando estou escrevendo o meu projeto final, para exemplo, eu quero ver como alguns 899 00:43:08,900 --> 00:43:11,270 site feito algo olhar da forma como fizeram. 900 00:43:11,270 --> 00:43:17,350 Vou entrar e usar esse painel para baixo aqui, a olhar para o que eles deram a CSS 901 00:43:17,350 --> 00:43:20,890 ou qual a cor que eles escolheram ou como eles entendeu de modo que, quando você pairou 902 00:43:20,890 --> 00:43:24,180 sobre algo, a lista desceu em uma bela cascata de moda. 903 00:43:24,180 --> 00:43:27,220 É uma ótima maneira de inspecionar o que as outras sites fazer e pedir emprestado deles. 904 00:43:27,220 --> 00:43:30,590 905 00:43:30,590 --> 00:43:33,690 >> Vamos passar para PHP. 906 00:43:33,690 --> 00:43:38,560 PHP significa, de certa forma recursiva, Processador de Hipertexto PHP. 907 00:43:38,560 --> 00:43:42,060 E PHP, o que vai fazer é executar do lado do servidor de código. 908 00:43:42,060 --> 00:43:44,490 Então, nós nunca vamos ver o código PHP. 909 00:43:44,490 --> 00:43:47,210 >> No entanto, ele não jogar bem com HTML e muitas vezes gera 910 00:43:47,210 --> 00:43:48,210 um monte de código HTML. 911 00:43:48,210 --> 00:43:52,570 Mas como você vai estar familiarizado com problema Jogo 7, o código PHP vai executar, 912 00:43:52,570 --> 00:43:56,200 gerar algum HTML, e é isso que o usuário vai acabar vendo. 913 00:43:56,200 --> 00:44:00,510 >> PHP é incrivelmente semelhante ao C. No entanto, há um par de 914 00:44:00,510 --> 00:44:04,400 diferenças, e essas diferenças são importantes para a nota. 915 00:44:04,400 --> 00:44:09,420 Uma diferença é que as variáveis em PHP são vagamente digitado. 916 00:44:09,420 --> 00:44:11,275 Alguém tem um sentido do que isso significa? 917 00:44:11,275 --> 00:44:14,245 >> AUDIÊNCIA: Não há necessidade de lançá-lo a si mesmo. 918 00:44:14,245 --> 00:44:16,400 Como não há necessidade de escrever em texto. 919 00:44:16,400 --> 00:44:19,070 >> JASON HIRSCHHORN: Eu não usaria a elenco palavra, mas sim, não há necessidade de declarar 920 00:44:19,070 --> 00:44:20,930 um tipo de uma variável específica. 921 00:44:20,930 --> 00:44:22,300 Como em vez vamos declarar uma variável? 922 00:44:22,300 --> 00:44:23,860 >> AUDIÊNCIA: Use um sinal de dólar. 923 00:44:23,860 --> 00:44:25,270 >> JASON HIRSCHHORN: Use um sinal de dólar. 924 00:44:25,270 --> 00:44:27,540 Então $ x é uma variável. 925 00:44:27,540 --> 00:44:29,580 $ 1 é uma variável. 926 00:44:29,580 --> 00:44:31,910 $ String é uma variável. 927 00:44:31,910 --> 00:44:36,280 >> Essas variáveis, $ x poderia ser um número inteiro. 928 00:44:36,280 --> 00:44:38,010 Então, pode ser uma string. 929 00:44:38,010 --> 00:44:39,420 Então, poderia ser um personagem. 930 00:44:39,420 --> 00:44:40,790 Realmente não importa. 931 00:44:40,790 --> 00:44:46,360 >> Além disso, a coisa legal sobre PHP é, digamos, US $ x é aquele string. 932 00:44:46,360 --> 00:44:48,920 E $ y é o personagem um. 933 00:44:48,920 --> 00:44:54,370 Você pode adicionar $ x e $ y, e ele vai dar-lhe 2, o que você esperaria. 934 00:44:54,370 --> 00:44:56,160 Portanto, há operações em PHP. 935 00:44:56,160 --> 00:45:00,810 Porque é variáveis ​​fracamente tipada, alguns a conversão implícita é feito para você 936 00:45:00,810 --> 00:45:02,330 e algumas operações. 937 00:45:02,330 --> 00:45:04,240 >> Você pode fazer operações em coisas de diferentes tipos. 938 00:45:04,240 --> 00:45:08,740 Considerando que, antes, muitas vezes você obterá um erro em C ditado, este não é o tipo 939 00:45:08,740 --> 00:45:09,610 que é suposto para ir aqui. 940 00:45:09,610 --> 00:45:11,510 Somente coisas desse tipo pode ir aqui. 941 00:45:11,510 --> 00:45:14,900 Você não está indo para obter esse tipo de de erro, geralmente, em PHP. 942 00:45:14,900 --> 00:45:17,420 Então essa é uma grande diferença - como lidamos com variáveis. 943 00:45:17,420 --> 00:45:20,850 >> A segunda grande diferença é que Código PHP é interpretado. 944 00:45:20,850 --> 00:45:23,110 Wheres, código C é compilado. 945 00:45:23,110 --> 00:45:23,910 O que isso significa? 946 00:45:23,910 --> 00:45:26,700 >> Bem, para o código C que executou através de um compilador. 947 00:45:26,700 --> 00:45:29,010 Você gerou um arquivo binário. 948 00:45:29,010 --> 00:45:30,770 E você executou o arquivo binário. 949 00:45:30,770 --> 00:45:35,500 Você cuidou de todos os erros antes de você gerou o arquivo binário. 950 00:45:35,500 --> 00:45:37,810 >> Claro, não poderia ter sido segmentação faltas, quando executou o 951 00:45:37,810 --> 00:45:39,020 arquivo binário. 952 00:45:39,020 --> 00:45:45,780 Mas não é como se você se esqueceu de incluir a definição de printf, ou 953 00:45:45,780 --> 00:45:48,735 você não usar uma variável e apenas criou uma variável desperdício. 954 00:45:48,735 --> 00:45:51,830 Ou você não definir um função protótipo. 955 00:45:51,830 --> 00:45:53,590 >> Tudo o que aconteceu antes de você compilado. 956 00:45:53,590 --> 00:45:56,830 Ele deu-lhe todos os erros ou mau coisas que ele achava que poderia acontecer. 957 00:45:56,830 --> 00:45:59,900 E então, você teve seu 0 e 1 arquivo que você executou. 958 00:45:59,900 --> 00:46:01,690 Código PHP não funciona assim. 959 00:46:01,690 --> 00:46:03,750 >> Você vai escrever o seu código PHP. 960 00:46:03,750 --> 00:46:05,820 Então, você vai salvá-lo, provavelmente. 961 00:46:05,820 --> 00:46:09,160 E, pelo menos em P-Set 7, você vai para atualizar seu navegador, e 962 00:46:09,160 --> 00:46:11,110 você vai ver o que aconteceu. 963 00:46:11,110 --> 00:46:14,110 Você vai ver a saída de que o código PHP. 964 00:46:14,110 --> 00:46:17,450 >> Você também pode ver, no topo da sua página, um erro. 965 00:46:17,450 --> 00:46:19,960 Porque você teve algum erro no seu PHP. 966 00:46:19,960 --> 00:46:22,390 Você ainda pode ver o resto a página web está olhando bem. 967 00:46:22,390 --> 00:46:25,130 Mas uma parte é errado, e não há um erro naquele lugar. 968 00:46:25,130 --> 00:46:28,320 E isso é porque essa parte da seu código PHP não funciona. 969 00:46:28,320 --> 00:46:31,680 >> Na verdade, quando você executar, quando você ir para algo como by.php. 970 00:46:31,680 --> 00:46:34,950 Vai passar por seu PHP arquivo linha por linha e executá-lo 971 00:46:34,950 --> 00:46:36,210 então e só então. 972 00:46:36,210 --> 00:46:39,890 Não vai para compilá-lo à frente de tempo ou compilar uma cópia e, em seguida, dar 973 00:46:39,890 --> 00:46:41,570 que compilou cópia para todos. 974 00:46:41,570 --> 00:46:43,830 Cada vez, ele vai passar por linha por linha e executá-lo. 975 00:46:43,830 --> 00:46:46,620 >> Por isso, algumas linhas podem trabalhar e imprimir algo correto. 976 00:46:46,620 --> 00:46:49,500 E outras linhas podem ser quebradas e produzir um erro em vez disso. 977 00:46:49,500 --> 00:46:52,650 Então, quando a depuração de PHP, demos lhe um par de coisas úteis 978 00:46:52,650 --> 00:46:54,580 para ajudá-lo a depurar, como a função de despejo. 979 00:46:54,580 --> 00:46:56,900 >> Mas, geralmente, você vai para ver esses erros. 980 00:46:56,900 --> 00:46:58,340 E é assim que você vai sabe que fez algo errado. 981 00:46:58,340 --> 00:47:00,740 Mas você só vai ver o erro uma vez que você realmente executar o código. 982 00:47:00,740 --> 00:47:03,420 983 00:47:03,420 --> 00:47:08,880 >> Outro aspecto importante do PHP e desenvolvimento web é a idéia de get 984 00:47:08,880 --> 00:47:09,920 contra post. 985 00:47:09,920 --> 00:47:13,250 Alguém pode explicar o que é a diferença entre GET e POST são? 986 00:47:13,250 --> 00:47:17,530 987 00:47:17,530 --> 00:47:18,780 Ninguém - 988 00:47:18,780 --> 00:47:21,710 989 00:47:21,710 --> 00:47:21,970 Sim. 990 00:47:21,970 --> 00:47:24,495 >> AUDIÊNCIA: Não um deles permitir que o usuário veja os dados, 991 00:47:24,495 --> 00:47:26,080 e um deles não? 992 00:47:26,080 --> 00:47:27,310 >> JASON HIRSCHHORN: Ótimo. 993 00:47:27,310 --> 00:47:28,400 Sim, você tem algo a acrescentar? 994 00:47:28,400 --> 00:47:32,622 >> AUDIÊNCIA: I pós fina é uma variável super-global. 995 00:47:32,622 --> 00:47:34,740 >> JASON HIRSCHHORN: Então ambos variáveis ​​são dadas a você. 996 00:47:34,740 --> 00:47:35,630 Estes são apenas variáveis. 997 00:47:35,630 --> 00:47:37,740 E você sabe que eles são variáveis, porque aqui eu 998 00:47:37,740 --> 00:47:38,780 usar o cifrão. 999 00:47:38,780 --> 00:47:41,950 >> Estas são variáveis ​​dadas para você pelo PHP. 1000 00:47:41,950 --> 00:47:45,990 E quando você se mover entre as páginas da web, você deseja salvar algumas informações. 1001 00:47:45,990 --> 00:47:47,960 Você provavelmente vai querer salvar se o usuário está logado pol 1002 00:47:47,960 --> 00:47:49,270 Isso não é salvo em GET e POST. 1003 00:47:49,270 --> 00:47:51,390 Isso está guardado em alguma outra coisa, uma variável diferente. 1004 00:47:51,390 --> 00:47:55,170 >> Alguém sabe o que variável que está salvo em, ou o que você usa em variável 1005 00:47:55,170 --> 00:47:57,728 P-Set 7, para se certificar de que o usuário está logado? 1006 00:47:57,728 --> 00:48:00,360 1007 00:48:00,360 --> 00:48:03,690 $ _SESSION, Que é exatamente correto, provavelmente importante estar familiarizado com 1008 00:48:03,690 --> 00:48:06,060 os nomes dessas coisas você usa com freqüência. 1009 00:48:06,060 --> 00:48:10,070 >> Então você usa a variável de sessão para salvar informações de uma página para outra. 1010 00:48:10,070 --> 00:48:11,075 Essa é uma variável super. 1011 00:48:11,075 --> 00:48:15,250 Ela existe em todas as páginas, talvez como uma variável global, se você quer pensar 1012 00:48:15,250 --> 00:48:16,900 sobre isso assim. 1013 00:48:16,900 --> 00:48:19,260 >> Há um par de outras variáveis que permitem transferir informações 1014 00:48:19,260 --> 00:48:20,710 de página para página. 1015 00:48:20,710 --> 00:48:24,260 Em particular, os que vamos nos concentrar em são o GET e as variáveis ​​POST. 1016 00:48:24,260 --> 00:48:29,330 No PHP eles se parecem $ _GET E $ _POST. 1017 00:48:29,330 --> 00:48:33,610 E a diferença, como Marcus apontou para fora, entre os dois é que, 1018 00:48:33,610 --> 00:48:37,670 informações em $ _GET é exibida na URL. 1019 00:48:37,670 --> 00:48:41,380 >> Então, se nós olhamos aqui, vemos um link do YouTube. 1020 00:48:41,380 --> 00:48:43,760 Vemos essa interrogação. 1021 00:48:43,760 --> 00:48:47,730 Vemos v = e, em seguida, algum valor. 1022 00:48:47,730 --> 00:48:53,460 Voltar para a ideia de valor de chave par, o v é a chave. 1023 00:48:53,460 --> 00:48:56,970 E aqui é o valor. 1024 00:48:56,970 --> 00:49:01,030 >> Então, se tivéssemos de ir a esta página ou codificação nesta página, teríamos um 1025 00:49:01,030 --> 00:49:04,000 variável chamada $ _GET. 1026 00:49:04,000 --> 00:49:11,030 Se fomos para $ _GET suporte aberto "v" próximo suporte, muito semelhante ao conjunto 1027 00:49:11,030 --> 00:49:15,000 notação, esta é uma matriz associado porque não estamos usando índices. 1028 00:49:15,000 --> 00:49:16,710 Estavam usando strings como chaves. 1029 00:49:16,710 --> 00:49:17,940 Mas a idéia muito similar. 1030 00:49:17,940 --> 00:49:20,520 Se fomos nós, iria receber esse valor. 1031 00:49:20,520 --> 00:49:23,276 >> Nesta página, que seria capaz para usar esse valor. 1032 00:49:23,276 --> 00:49:32,200 Se nós realmente olhar, vamos ir a uma página do YouTube. 1033 00:49:32,200 --> 00:49:35,140 O vídeo devemos assistir? 1034 00:49:35,140 --> 00:49:37,350 Este, são pessoas Hobbit fãs? 1035 00:49:37,350 --> 00:49:40,731 >> AUDIÊNCIA: sim. 1036 00:49:40,731 --> 00:49:44,750 >> JASON HIRSCHHORN: Então, eu estou copiando sua URL compartilhar e 1037 00:49:44,750 --> 00:49:46,000 colá-lo em uma nova janela. 1038 00:49:46,000 --> 00:49:48,550 1039 00:49:48,550 --> 00:50:00,470 E agora, se você olhar para cima aqui, você vai notar que, mais uma vez - 1040 00:50:00,470 --> 00:50:03,170 Vou copiar e colar isso em gedit, para que possamos vê-la maior. 1041 00:50:03,170 --> 00:50:16,530 1042 00:50:16,530 --> 00:50:19,720 Você notará que ele tem este ponto de interrogação. 1043 00:50:19,720 --> 00:50:22,150 O ponto de interrogação que designa tudo depois é que isto vai ser 1044 00:50:22,150 --> 00:50:23,530 salvo na variável get. 1045 00:50:23,530 --> 00:50:29,130 >> Em seguida, ele tem o v, que é a primeira tecla e este primeiro valor. 1046 00:50:29,130 --> 00:50:30,710 Ampersand é especial. 1047 00:50:30,710 --> 00:50:34,340 Ampersand está dizendo, OK, nós terminou o primeiro valor. 1048 00:50:34,340 --> 00:50:37,170 Estamos agora a passar para o outro par de valores chave. 1049 00:50:37,170 --> 00:50:41,135 Aqui, a chave é chamada de função, eo valor é youtu.be. 1050 00:50:41,135 --> 00:50:44,010 1051 00:50:44,010 --> 00:50:50,710 >> Então, se eu fosse uma codificação esta página e alguém foi para esta URL e eu tive 1052 00:50:50,710 --> 00:50:53,190 talvez watch.php. 1053 00:50:53,190 --> 00:50:54,150 E eu estava programando isso. 1054 00:50:54,150 --> 00:50:57,060 E eu poderia usar a variável $ _GET. 1055 00:50:57,060 --> 00:51:02,740 E eu gostaria de ter um v, e Eu teria um recurso. 1056 00:51:02,740 --> 00:51:07,080 >> E se eu usar a tecla v, I receberia esse valor. 1057 00:51:07,080 --> 00:51:14,145 E se eu fiz $ _GET suporte "característica" próximo suporte, gostaria de obter este valor. 1058 00:51:14,145 --> 00:51:17,530 Mais uma vez, isso não significa necessariamente aplicam-se a - 1059 00:51:17,530 --> 00:51:21,460 Obviamente, o YouTube chaves e valores e se a informação não se aplica a 1060 00:51:21,460 --> 00:51:22,700 nosso problema jogo 7. 1061 00:51:22,700 --> 00:51:28,450 Mas há certas coisas que nós passar via GET em nosso Conjunto de Problemas 7. 1062 00:51:28,450 --> 00:51:33,120 E, certamente, quando você vai para uma página da web ou está codificando a sua própria página, o 1063 00:51:33,120 --> 00:51:36,440 $ _GET Virá a calhar quando a sua codificação. 1064 00:51:36,440 --> 00:51:41,030 >> O que é uma razão para usar $ _GET em seguida, se oferece nenhuma privacidade? 1065 00:51:41,030 --> 00:51:43,170 Você vê todas essas informações que está sendo transferido. 1066 00:51:43,170 --> 00:51:44,170 Está tudo exibido para o usuário. 1067 00:51:44,170 --> 00:51:49,060 Mas o que é uma razão que você pode quer economizar algo em $ _GET, como 1068 00:51:49,060 --> 00:51:50,310 oposição a $ _POST? 1069 00:51:50,310 --> 00:51:52,650 1070 00:51:52,650 --> 00:51:53,900 Por que você pode querer fazer isso? 1071 00:51:53,900 --> 00:51:58,065 1072 00:51:58,065 --> 00:51:58,540 >> Tudo bem. 1073 00:51:58,540 --> 00:52:00,310 Perguntei-lhe no Quiz 1. 1074 00:52:00,310 --> 00:52:02,210 Qual é o pro de $ _GET? 1075 00:52:02,210 --> 00:52:04,250 O que é um pro? 1076 00:52:04,250 --> 00:52:04,700 Sim - 1077 00:52:04,700 --> 00:52:06,180 >> AUDIÊNCIA: É mais fácil compartilhar informações. 1078 00:52:06,180 --> 00:52:07,040 >> JASON HIRSCHHORN: Eu acho que isso é ótimo. 1079 00:52:07,040 --> 00:52:07,870 É mais fácil para compartilhar informações. 1080 00:52:07,870 --> 00:52:09,360 É mais fácil para marcar. 1081 00:52:09,360 --> 00:52:15,260 >> Você pode marcar agora, YouTube.com / watch? V = alguma coisa e ir 1082 00:52:15,260 --> 00:52:16,900 para que o vídeo específica. 1083 00:52:16,900 --> 00:52:22,020 Se o YouTube sempre fez solicitações POST para páginas diferentes, cada URL YouTube 1084 00:52:22,020 --> 00:52:22,985 Seria YouTube.com. 1085 00:52:22,985 --> 00:52:25,750 Você não poderia marcar um único vídeo. 1086 00:52:25,750 --> 00:52:28,160 Porque se você disser compartilhado esse link com outra pessoa, eles não 1087 00:52:28,160 --> 00:52:30,160 obter automaticamente a variável post. 1088 00:52:30,160 --> 00:52:33,570 Eles estão apenas recebendo este link, eo link é o mesmo para todos. 1089 00:52:33,570 --> 00:52:35,180 >> Então isso é um pró. 1090 00:52:35,180 --> 00:52:38,850 Ele permite que você marcar esta informações ou compartilhar essas informações 1091 00:52:38,850 --> 00:52:40,840 ou torná-lo um pouco mais user-friendly. 1092 00:52:40,840 --> 00:52:43,890 Claro, não há privacidade, por isso temos esta variável post. 1093 00:52:43,890 --> 00:52:47,570 E a informação post não é exibida na URL. 1094 00:52:47,570 --> 00:52:49,200 >> Não é totalmente privado. 1095 00:52:49,200 --> 00:52:51,710 Mas é marginalmente mais privado. 1096 00:52:51,710 --> 00:52:55,030 E então você verá esta URL aqui em baixo, cs50.net. 1097 00:52:55,030 --> 00:52:59,200 Se você está ou não conectado ao site, ele vai ter o mesmo 1098 00:52:59,200 --> 00:53:02,600 URL, cs50.net. 1099 00:53:02,600 --> 00:53:05,940 >> Obviamente, é algo diferente, se você estiver logado no site. 1100 00:53:05,940 --> 00:53:08,690 Você tem, um, provavelmente introduzir o seu PIN. 1101 00:53:08,690 --> 00:53:10,600 E confirmou que com o servidor. 1102 00:53:10,600 --> 00:53:12,650 E é provavelmente salvando alguma outra informação. 1103 00:53:12,650 --> 00:53:14,810 Mas a URL não muda em nada. 1104 00:53:14,810 --> 00:53:17,080 >> E assim, esse é o caso, quando algo é enviado por POST. 1105 00:53:17,080 --> 00:53:18,800 A URL não muda. 1106 00:53:18,800 --> 00:53:21,100 Esta informação não é POST exibida na URL. 1107 00:53:21,100 --> 00:53:26,150 Mas algum estado mudou, e talvez há algumas informações salvas no 1108 00:53:26,150 --> 00:53:27,400 Variável POST. 1109 00:53:27,400 --> 00:53:30,460 1110 00:53:30,460 --> 00:53:36,880 >> Desculpe. antes de eu ir para o SQL, qualquer perguntas sobre o PHP, em particular, 1111 00:53:36,880 --> 00:53:41,850 perguntas sobre coisas que não passar por cima de que você encontrou ou qualquer sintaxe ou 1112 00:53:41,850 --> 00:53:43,855 questões lógicas sobre PHP? 1113 00:53:43,855 --> 00:53:49,300 1114 00:53:49,300 --> 00:53:50,050 OK. 1115 00:53:50,050 --> 00:53:54,400 >> O texto final, você será interagindo com esta semana é a 1116 00:53:54,400 --> 00:53:58,920 Structured Query Language, SQL, pronunciado sequela freqüência. 1117 00:53:58,920 --> 00:54:01,740 Isso permite que você interaja com o banco de dados de uma maneira formalizada. 1118 00:54:01,740 --> 00:54:04,390 E ele joga muito bem com PHP. 1119 00:54:04,390 --> 00:54:09,950 >> Como você verá no Conjunto de Problemas 7, nós temos lhe dado uma função chamada de consulta. 1120 00:54:09,950 --> 00:54:14,990 E leva uma string SQL e executa essa consulta no banco de dados. 1121 00:54:14,990 --> 00:54:17,470 Nos últimos anos, você não estava dada esta função. 1122 00:54:17,470 --> 00:54:22,250 Você tinha que usar funções PHP para fazer a consulta no banco de dados e de verificação 1123 00:54:22,250 --> 00:54:24,230 para erros e, em seguida, obter os resultados. 1124 00:54:24,230 --> 00:54:26,120 >> E, na verdade, não é tão difícil, porque mais uma vez, que desempenha 1125 00:54:26,120 --> 00:54:27,080 muito bem com PHP. 1126 00:54:27,080 --> 00:54:31,240 E PHP dá-lhe uma série de funções para interagir com uma base de dados de SQL. 1127 00:54:31,240 --> 00:54:34,810 Então, muitas vezes, os dois estes vão juntos. 1128 00:54:34,810 --> 00:54:37,090 Claro, você pode interagir com o banco de dados SQL com qualquer 1129 00:54:37,090 --> 00:54:38,400 número de outras línguas. 1130 00:54:38,400 --> 00:54:41,420 Mas o PHP é uma ótima escolha. 1131 00:54:41,420 --> 00:54:42,290 >> Um banco de dados - 1132 00:54:42,290 --> 00:54:46,030 nós falaremos sobre isso rapidamente, porque esta é uma palavra da moda que vamos 1133 00:54:46,030 --> 00:54:48,030 começar a usar muitas vezes - 1134 00:54:48,030 --> 00:54:50,140 é uma coleção de tabelas. 1135 00:54:50,140 --> 00:54:53,960 Assim, podemos pensar nisso como um arquivo Excel. 1136 00:54:53,960 --> 00:54:57,260 Um arquivo Excel tem várias abas na parte inferior do ecrã. 1137 00:54:57,260 --> 00:55:03,090 Cada guia, vamos agora chamar uma tabela, onde uma tabela é um conjunto de linhas. 1138 00:55:03,090 --> 00:55:04,060 >> E o que é uma fila? 1139 00:55:04,060 --> 00:55:06,890 Bem, a linha é a mesma coisa no arquivo Excel. 1140 00:55:06,890 --> 00:55:10,380 Isso apenas tem certos valores para cada campo ou cada coluna dado dado. 1141 00:55:10,380 --> 00:55:12,010 É como uma entrada na tabela. 1142 00:55:12,010 --> 00:55:16,570 É um estudante, que tem um ID, um específico de identificação, e um nome e um específico 1143 00:55:16,570 --> 00:55:17,910 casa específica. 1144 00:55:17,910 --> 00:55:19,790 >> Assim, um banco de dados é uma coleção de tabelas. 1145 00:55:19,790 --> 00:55:22,685 E mesas são um número de linhas ou registros. 1146 00:55:22,685 --> 00:55:25,470 1147 00:55:25,470 --> 00:55:28,280 Há também, em cada mesa, determinados campos. 1148 00:55:28,280 --> 00:55:32,130 E que especifica o que cada registro é vai ter, às vezes chamado de campos 1149 00:55:32,130 --> 00:55:33,890 colunas, mas geralmente chamadas de campos. 1150 00:55:33,890 --> 00:55:38,270 >> Nesta tabela muito simples, eu tenho três campos, um campo de identificação, um nome de usuário 1151 00:55:38,270 --> 00:55:39,780 campo, e um campo de hash. 1152 00:55:39,780 --> 00:55:41,300 E eu tenho três linhas. 1153 00:55:41,300 --> 00:55:42,100 Neste momento, eles estão vazios. 1154 00:55:42,100 --> 00:55:44,850 Eles provavelmente não estaria vazio se esta foi a minha base de dados real. 1155 00:55:44,850 --> 00:55:50,530 >> Então, se você já usou o Excel, ideia semelhante ao que você faz no Excel, no entanto, 1156 00:55:50,530 --> 00:55:54,300 obviamente, agora vamos ser capazes de fazer muito mais poderoso coisas no 1157 00:55:54,300 --> 00:55:56,430 a informação que é armazenada em nosso banco de dados. 1158 00:55:56,430 --> 00:56:00,270 Você estará criando-se um banco de dados para Conjunto de Problemas 7. 1159 00:56:00,270 --> 00:56:02,820 Mas você estará criando múltiplas tabelas no banco de dados. 1160 00:56:02,820 --> 00:56:06,950 >> Você estará criando um banco de dados ou uma tabela para os usuários. 1161 00:56:06,950 --> 00:56:12,830 Você estará também a criação de uma mesa para provavelmente transações com ações, para manter 1162 00:56:12,830 --> 00:56:15,580 controle deles, porque você precisa implementar um recurso de histórico. 1163 00:56:15,580 --> 00:56:18,370 Ambas as mesas terão diferentes campos. 1164 00:56:18,370 --> 00:56:22,190 Por exemplo, em um campo de usuário, você provavelmente vai querer o seu nome de usuário e uma 1165 00:56:22,190 --> 00:56:24,220 ID e um hash de sua senha. 1166 00:56:24,220 --> 00:56:28,450 >> Na tabela de Stocks que mantém o controle de história ou a tabela de histórico, você 1167 00:56:28,450 --> 00:56:31,620 provavelmente não precisa o nome de usuário eo hash eo ID. 1168 00:56:31,620 --> 00:56:34,460 Você provavelmente só precisa de um desses valores que são únicas, para associar 1169 00:56:34,460 --> 00:56:35,830 o com um determinado utilizador. 1170 00:56:35,830 --> 00:56:38,100 >> Mas então, você quer armazenar outro coisas como, o tempo 1171 00:56:38,100 --> 00:56:40,630 Foi transação feita. 1172 00:56:40,630 --> 00:56:42,380 O estoque foi comprado ou vendido? 1173 00:56:42,380 --> 00:56:44,150 Quantas ações do foi comprado ou vendido? 1174 00:56:44,150 --> 00:56:48,360 Qual foi o preço a que o estoque foi comprado ou vendido? 1175 00:56:48,360 --> 00:56:50,180 >> Então, novamente, você vai estar interagindo com bases de dados que há 1176 00:56:50,180 --> 00:56:51,350 vai ter várias tabelas. 1177 00:56:51,350 --> 00:56:54,340 Cada mesa vai ter seu próprio conjunto de campos. 1178 00:56:54,340 --> 00:56:58,430 No entanto, provavelmente haverá um semelhante campo em cada quadro, que 1179 00:56:58,430 --> 00:57:00,130 refere-los um ao outro. 1180 00:57:00,130 --> 00:57:02,660 Normalmente, este é um campo ID. 1181 00:57:02,660 --> 00:57:07,000 >> Porque se cada usuário tem uma identificação única e você associa essa identificação com cada 1182 00:57:07,000 --> 00:57:09,365 transação que o usuário faz ou toda a história do usuário. 1183 00:57:09,365 --> 00:57:12,760 1184 00:57:12,760 --> 00:57:13,830 E você tem o ID do usuário. 1185 00:57:13,830 --> 00:57:15,365 Você pode obter informações de ambas as tabelas. 1186 00:57:15,365 --> 00:57:19,770 Você pode obter o seu nome de usuário, e você pode obter todas as suas transações. 1187 00:57:19,770 --> 00:57:24,410 >> Qualquer dúvida sobre bancos de dados, ou perguntas específicas? 1188 00:57:24,410 --> 00:57:25,240 Na verdade, vamos manter isso. 1189 00:57:25,240 --> 00:57:27,410 Nós estaremos lá em dois lados. 1190 00:57:27,410 --> 00:57:31,210 >> Portanto, há quatro operações em bancos de dados que você irá utilizar em 1191 00:57:31,210 --> 00:57:34,790 Conjunto de Problemas 7 e provável sempre estar usando. 1192 00:57:34,790 --> 00:57:38,040 A primeira coisa que quero fazer é inserir um novo registro em uma tabela ou um 1193 00:57:38,040 --> 00:57:39,960 nova linha em uma tabela. 1194 00:57:39,960 --> 00:57:46,070 Esta é a função genérica, a forma genérica, de que a consulta SQL. 1195 00:57:46,070 --> 00:57:52,240 >> INSERT INTO tabela, qualquer que seja colunas que deseja inserir e, em seguida, 1196 00:57:52,240 --> 00:57:58,740 os valores que você vai querer colocar para essas colunas ou campos. 1197 00:57:58,740 --> 00:58:03,980 Se você tiver várias tabelas em um banco de dados ou vários bancos de dados, você 1198 00:58:03,980 --> 00:58:06,630 também pode precisar especificar o banco de dados ea tabela que você quer 1199 00:58:06,630 --> 00:58:07,980 para colocar as coisas em. 1200 00:58:07,980 --> 00:58:11,390 Mas muito simples, se você deseja inserir em algo, você diz, aqui estão os 1201 00:58:11,390 --> 00:58:12,890 campos que eu quero inserir. 1202 00:58:12,890 --> 00:58:14,740 E aqui estão os valores. 1203 00:58:14,740 --> 00:58:18,840 >> Em algumas tabelas, também, e este usuário do mesa é um bom exemplo. 1204 00:58:18,840 --> 00:58:21,940 Provavelmente na tabela do usuário e provavelmente na mesa do seu usuário em P-Set 1205 00:58:21,940 --> 00:58:24,200 7, não há apenas um valor de username. 1206 00:58:24,200 --> 00:58:27,100 Não há apenas um valor em dinheiro, ou no campo, em vez. 1207 00:58:27,100 --> 00:58:29,140 Há também um campo de identificação. 1208 00:58:29,140 --> 00:58:31,110 >> Eu não estou indo para inserir esse campo ID. 1209 00:58:31,110 --> 00:58:34,020 Isso vai ser dada a me automaticamente, quando uma 1210 00:58:34,020 --> 00:58:35,810 é inserido novo recorde. 1211 00:58:35,810 --> 00:58:37,820 Portanto, há algum campo que você pode definir a ser automático. 1212 00:58:37,820 --> 00:58:41,740 >> Talvez você queira dar a cada usuário $ 10,000 de dinheiro fora do bastão. 1213 00:58:41,740 --> 00:58:43,470 Então eu não preciso inserir um número de caixa aqui. 1214 00:58:43,470 --> 00:58:45,860 Tudo que eu preciso é inserir o nome de usuário. 1215 00:58:45,860 --> 00:58:49,230 E então, o campo de caixa será pré-preenchido, e no campo ID será 1216 00:58:49,230 --> 00:58:50,590 ser pré-preenchida. 1217 00:58:50,590 --> 00:58:53,640 >> Então, muitas vezes, não estamos inserindo algo em todos os campos, porque 1218 00:58:53,640 --> 00:58:55,400 os outros campos são pré-povoada. 1219 00:58:55,400 --> 00:58:58,320 Porque é assim que nós criar essa tabela. 1220 00:58:58,320 --> 00:59:01,280 >> A segunda coisa que você vai quer fazer é excluir um registro. 1221 00:59:01,280 --> 00:59:02,900 Excluindo algo é muito simples. 1222 00:59:02,900 --> 00:59:05,660 Você dá a mesa onde você quer para apagar algo. 1223 00:59:05,660 --> 00:59:11,202 E você diz, OK, eu quero excluir o registro que tem um nome de usuário de Milo. 1224 00:59:11,202 --> 00:59:16,180 Ou eu quero apagar todos os registros que ter um nome de usuário de Milo ou que fosse um 1225 00:59:16,180 --> 00:59:18,700 transação de número de identificação de usuário 2. 1226 00:59:18,700 --> 00:59:21,950 1227 00:59:21,950 --> 00:59:24,809 Qualquer dúvida sobre estes dois tipos de consultas? 1228 00:59:24,809 --> 00:59:26,059 >> AUDIÊNCIA: [inaudível]. 1229 00:59:26,059 --> 00:59:28,721 1230 00:59:28,721 --> 00:59:30,770 >> JASON HIRSCHHORN: sim. 1231 00:59:30,770 --> 00:59:33,530 Então eu vou usar linha e registro alternadamente e alguns 1232 00:59:33,530 --> 00:59:35,400 com coluna e no campo. 1233 00:59:35,400 --> 00:59:37,650 Mas uma linha é um registro. 1234 00:59:37,650 --> 00:59:40,080 Uma coluna é um campo, indo voltar a esta tabela. 1235 00:59:40,080 --> 00:59:44,210 1236 00:59:44,210 --> 00:59:45,420 >> OK. 1237 00:59:45,420 --> 00:59:47,310 A próxima coisa que você provavelmente está vai fazer é obter algum 1238 00:59:47,310 --> 00:59:48,400 informações da tabela. 1239 00:59:48,400 --> 00:59:50,090 Essa é uma consulta seleção. 1240 00:59:50,090 --> 00:59:52,330 E, novamente, que a tabela estou selecionando a partir de? 1241 00:59:52,330 --> 00:59:58,370 E que coluna que eu quero para selecionar ou qual o valor que eu quero para selecionar e 1242 00:59:58,370 --> 00:59:59,530 a partir de qual linha? 1243 00:59:59,530 --> 01:00:01,120 >> Assim, o Select é um pouco específico. 1244 01:00:01,120 --> 01:00:03,620 Eu digo, OK, eu quero essa tabela. 1245 01:00:03,620 --> 01:00:09,350 E então eu quero que o nome de usuário da coluna e Eu quero-o da linha com ID 2. 1246 01:00:09,350 --> 01:00:11,030 Essa é uma maneira de fazer um Select. 1247 01:00:11,030 --> 01:00:14,180 >> Ou eu posso dizer, me dar a cada nome de usuário único. 1248 01:00:14,180 --> 01:00:18,200 Ou eu posso dizer, me dê um todo linha desta tabela, onde 1249 01:00:18,200 --> 01:00:19,460 o nome de usuário é 1. 1250 01:00:19,460 --> 01:00:22,300 Portanto, há algumas maneiras diferentes para fazer consultas seleção, dependendo de como 1251 01:00:22,300 --> 01:00:24,130 máximo de informação que você quer, 1252 01:00:24,130 --> 01:00:29,410 >> Você pode sempre selecionar tudo dessa tabela específica e, em seguida, laço 1253 01:00:29,410 --> 01:00:31,320 através dele, escolhendo as coisas que você quer. 1254 01:00:31,320 --> 01:00:33,940 Mas lembre-se, se você está selecionando um monte de coisas a partir de uma tabela e você 1255 01:00:33,940 --> 01:00:37,400 tem realmente uma grande mesa, que terá algum tempo, então melhor escolher apenas 1256 01:00:37,400 --> 01:00:40,000 as coisas que você vai para acabar usando. 1257 01:00:40,000 --> 01:00:43,580 >> Além disso, com Select e com todos estes outros comandos SQL, bem, eu sou 1258 01:00:43,580 --> 01:00:45,760 dando-lhe a versão de esqueleto. 1259 01:00:45,760 --> 01:00:51,600 Mas dizer, estou selecionando os usuários e eu quero imprimi-los em ordem alfabética, 1260 01:00:51,600 --> 01:00:56,710 Eu poderia selecionar todos os usuários e, em seguida, tipo los em ordem alfabética no meu código. 1261 01:00:56,710 --> 01:01:01,990 >> Ou há uma maneira de escrever o select consulta, que seleciona as coisas de uma 1262 01:01:01,990 --> 01:01:06,580 moda alfabética, baseado fora de um coluna específica, ascendente ou 1263 01:01:06,580 --> 01:01:07,490 descendente. 1264 01:01:07,490 --> 01:01:11,660 Portanto, tenha em mente que, muito do que você quer fazer provavelmente pode ser feito em 1265 01:01:11,660 --> 01:01:15,070 a consulta através de um adicional atributo. 1266 01:01:15,070 --> 01:01:19,120 Então não procure essas consultas on-line ou as outras coisas que você pode fazer com estes 1267 01:01:19,120 --> 01:01:21,410 consultas para expandi-los. 1268 01:01:21,410 --> 01:01:25,020 >> Por fim, a última coisa que você quer fazer não é inserir algo ou excluir 1269 01:01:25,020 --> 01:01:26,700 algo, mas em vez atualizar alguma coisa. 1270 01:01:26,700 --> 01:01:30,380 E isso é feito com a atualização consulta e, novamente, o mesa. 1271 01:01:30,380 --> 01:01:32,530 E o que a mudança que eu quero fazer? 1272 01:01:32,530 --> 01:01:35,915 E para que linha ou registro fazer Eu quero fazer essa mudança? 1273 01:01:35,915 --> 01:01:38,720 1274 01:01:38,720 --> 01:01:40,300 Qualquer dúvida sobre SQL? 1275 01:01:40,300 --> 01:01:47,070 1276 01:01:47,070 --> 01:01:47,310 >> OK. 1277 01:01:47,310 --> 01:01:49,080 Portanto, temos cerca de 15 minutos. 1278 01:01:49,080 --> 01:01:51,460 E este é o último slide que eu tenho. 1279 01:01:51,460 --> 01:01:55,380 E espero que, este último slide é uma bom segue em conjunto de problemas, 1280 01:01:55,380 --> 01:01:58,820 porque compreender onde queremos inserir registros, excluí-los, selecione 1281 01:01:58,820 --> 01:02:03,420 eles, e atualizá-los nos ajudará compreender a lógica maior e fluxo 1282 01:02:03,420 --> 01:02:05,570 do Conjunto de Problemas 7. 1283 01:02:05,570 --> 01:02:08,330 >> Então, eu sei todas as respostas a estas perguntas. 1284 01:02:08,330 --> 01:02:10,570 Eu não vou dizer a você todas as respostas. 1285 01:02:10,570 --> 01:02:15,530 Mas se alguém gostaria de apresentar uma questão ao grupo ou um 1286 01:02:15,530 --> 01:02:18,700 responder a um destes questão, podemos usar isso como um ponto de saltar fora para 1287 01:02:18,700 --> 01:02:20,311 falar sobre o conjunto de problemas. 1288 01:02:20,311 --> 01:02:24,159 1289 01:02:24,159 --> 01:02:27,260 Ou se alguém tem um mais genérico questão fora do conjunto de problemas, sinta-se 1290 01:02:27,260 --> 01:02:28,210 livre para fazer isso também. 1291 01:02:28,210 --> 01:02:29,460 E podemos começar por aí. 1292 01:02:29,460 --> 01:02:32,840 1293 01:02:32,840 --> 01:02:35,973 Tenha em mente que você ficar em silêncio está prejudicando a todos. 1294 01:02:35,973 --> 01:02:36,376 É. 1295 01:02:36,376 --> 01:02:39,540 >> AUDIÊNCIA: Então, é a única maneira de passar variáveis ​​de e para diferentes web 1296 01:02:39,540 --> 01:02:44,532 páginas, ou a mais conveniente forma, utilizando POST ou GET? 1297 01:02:44,532 --> 01:02:52,380 >> JASON HIRSCHHORN: Então, sim, que é o maneira mais conveniente dizer - quando 1298 01:02:52,380 --> 01:02:53,970 alguém preenche um formulário - 1299 01:02:53,970 --> 01:02:57,540 obter informações sobre uma outra web página, usando GET ou POST. 1300 01:02:57,540 --> 01:03:00,400 1301 01:03:00,400 --> 01:03:04,320 Por causa da estrutura que estamos usando neste conjunto de problemas, você notará 1302 01:03:04,320 --> 01:03:08,630 que, muitas vezes, tornar outra página. 1303 01:03:08,630 --> 01:03:12,420 Ou nós prestamos um outro arquivo, não necessariamente outra página. 1304 01:03:12,420 --> 01:03:14,050 >> Então nós passamos em uma variável. 1305 01:03:14,050 --> 01:03:16,400 E, em seguida, ele processa um Página HTML, usando o 1306 01:03:16,400 --> 01:03:18,220 informação de que variável. 1307 01:03:18,220 --> 01:03:20,790 Isso não é tecnicamente passando informações entre 1308 01:03:20,790 --> 01:03:21,910 diferentes páginas da web. 1309 01:03:21,910 --> 01:03:24,600 Que está a passar informações entre arquivos diferentes. 1310 01:03:24,600 --> 01:03:26,710 >> E assim, podemos usar qualquer variável para fazer isso. 1311 01:03:26,710 --> 01:03:33,230 Mas sim, se quiséssemos passar informações de uma página específica para 1312 01:03:33,230 --> 01:03:36,850 outra página, GET e POST faria ser o caminho para fazer isso. 1313 01:03:36,850 --> 01:03:43,060 1314 01:03:43,060 --> 01:03:45,765 Quaisquer outras questões sobre o conjunto de problemas? 1315 01:03:45,765 --> 01:03:49,490 1316 01:03:49,490 --> 01:03:50,150 >> OK. 1317 01:03:50,150 --> 01:03:53,660 Vamos passar, então, de algum parte do conjunto de problemas. 1318 01:03:53,660 --> 01:04:00,260 Você está indo a necessidade de, em um ponto, apresentar carteira de alguém em 1319 01:04:00,260 --> 01:04:01,710 a tela. 1320 01:04:01,710 --> 01:04:06,454 O que quero dizer quando digo carteira, no contexto deste problema definido? 1321 01:04:06,454 --> 01:04:11,350 >> AUDIÊNCIA: É como as ações que eles tem como, muitas ações que possuem, 1322 01:04:11,350 --> 01:04:13,760 o preço, e quanto dinheiro que lhes resta. 1323 01:04:13,760 --> 01:04:15,235 >> JASON HIRSCHHORN: Isso soa muito bem. 1324 01:04:15,235 --> 01:04:19,640 Então, eu quero mostrar todas as ações que eles próprios para estoque de cada empresa 1325 01:04:19,640 --> 01:04:23,770 ações e, provavelmente, o quanto isso é vale a pena, e, em seguida, uma variável independente, 1326 01:04:23,770 --> 01:04:25,960 quanto dinheiro que possuem. 1327 01:04:25,960 --> 01:04:27,150 Então, dizer que eu quero descrever isso. 1328 01:04:27,150 --> 01:04:29,660 Vamos começar falando sobre como eu poderia vai fazer sobre isso, o que eu estou tabelas 1329 01:04:29,660 --> 01:04:31,210 indo a necessidade de ter que ser capaz de fazer isso. 1330 01:04:31,210 --> 01:04:34,070 1331 01:04:34,070 --> 01:04:34,460 Sim - 1332 01:04:34,460 --> 01:04:37,970 >> AUDIÊNCIA: usuários bem, e então, eu acho você pode fazer uma tabela chamada 1333 01:04:37,970 --> 01:04:41,920 Acções ou algo assim, que seria quantos eles compraram. 1334 01:04:41,920 --> 01:04:42,660 >> JASON HIRSCHHORN: OK. 1335 01:04:42,660 --> 01:04:46,530 Então, eu vou precisar de uma tabela chamada Os usuários, que mantém o controle do 1336 01:04:46,530 --> 01:04:50,640 nome de usuário, presumivelmente, provavelmente algum ID, provavelmente senha de um indivíduo. 1337 01:04:50,640 --> 01:04:52,850 O que é outra coisa que você apenas disse que é associado? 1338 01:04:52,850 --> 01:04:55,510 Alguém além de Michael, o que é outra coisa que esta associado 1339 01:04:55,510 --> 01:04:58,270 cada usuário, exclusivo para eles? 1340 01:04:58,270 --> 01:05:00,050 >> AUDIÊNCIA: ID. 1341 01:05:00,050 --> 01:05:01,170 >> JASON HIRSCHHORN: ID - 1342 01:05:01,170 --> 01:05:03,540 o que é uma outra coisa que nós estamos provavelmente vai querer 1343 01:05:03,540 --> 01:05:05,685 exibir nessa página? 1344 01:05:05,685 --> 01:05:06,990 >> AUDIÊNCIA: Seu nome. 1345 01:05:06,990 --> 01:05:10,550 >> JASON HIRSCHHORN: Seu nome - o que é outra coisa relacionada a este 1346 01:05:10,550 --> 01:05:11,420 determinado conjunto de problemas? 1347 01:05:11,420 --> 01:05:14,110 >> AUDIÊNCIA: Que ações eles próprios - 1348 01:05:14,110 --> 01:05:16,650 >> JASON HIRSCHHORN: Não vão haver um monte de ações que eles possuem. 1349 01:05:16,650 --> 01:05:19,670 O que é um valor específico, porém, que eles vão ter 1350 01:05:19,670 --> 01:05:22,640 associado com eles? 1351 01:05:22,640 --> 01:05:25,709 Como é que eles vão comprar e vender as suas ações? 1352 01:05:25,709 --> 01:05:26,595 >> AUDIÊNCIA: Dinheiro. 1353 01:05:26,595 --> 01:05:28,100 >> JASON HIRSCHHORN: Eles são vai ter dinheiro. 1354 01:05:28,100 --> 01:05:31,020 Assim, cada usuário vai ter um valor para o dinheiro. 1355 01:05:31,020 --> 01:05:32,360 E isso vai ser exclusivo para cada usuário. 1356 01:05:32,360 --> 01:05:35,040 Assim, no quadro do utilizador, que faz sentido colocar em dinheiro. 1357 01:05:35,040 --> 01:05:39,100 >> Você pode, é claro, criar outra tabela que tem IDs de usuário e sua 1358 01:05:39,100 --> 01:05:40,200 valor do dinheiro. 1359 01:05:40,200 --> 01:05:41,070 Mas isso não faz sentido. 1360 01:05:41,070 --> 01:05:43,410 Não faz sentido simplesmente colocar tudo isto de uma tabela. 1361 01:05:43,410 --> 01:05:46,860 >> Então, nós vamos ter uma tabela com essa informação. 1362 01:05:46,860 --> 01:05:48,360 E então, qual é a outra tabela nós vamos ter? 1363 01:05:48,360 --> 01:05:49,430 Você disse que, uma mesa de Stocks. 1364 01:05:49,430 --> 01:05:50,680 O que estamos colocando em tabela de Stocks? 1365 01:05:50,680 --> 01:05:55,860 1366 01:05:55,860 --> 01:05:57,530 Qualquer pessoa, idéias - 1367 01:05:57,530 --> 01:05:58,796 >> AUDIÊNCIA: A empresa. 1368 01:05:58,796 --> 01:06:00,020 >> JASON HIRSCHHORN: Vamos para colocar no nome do 1369 01:06:00,020 --> 01:06:03,620 empresa, de modo AAPL para a Apple. 1370 01:06:03,620 --> 01:06:04,050 É. 1371 01:06:04,050 --> 01:06:05,390 >> AUDIÊNCIA: Quantas ações e o quanto eles valem. 1372 01:06:05,390 --> 01:06:08,590 >> JASON HIRSCHHORN: Quantas ações, o quanto eles valem - 1373 01:06:08,590 --> 01:06:10,630 o que é outra coisa que precisa em que mesa? 1374 01:06:10,630 --> 01:06:12,770 >> AUDIÊNCIA: A ID do usuário para indexá-lo. 1375 01:06:12,770 --> 01:06:14,000 >> JASON HIRSCHHORN: A ID de usuário. 1376 01:06:14,000 --> 01:06:16,070 Então, nesse quadro, vamos provavelmente tem - 1377 01:06:16,070 --> 01:06:18,610 vamos dizer, se é alguém que possui três ações, três linhas, cada uma com 1378 01:06:18,610 --> 01:06:23,730 esse ID de usuário ou usuário do indivíduo ID, mas um nome de empresa diferente, uma 1379 01:06:23,730 --> 01:06:28,570 número diferente de ações presumivelmente, e um valor de preço diferente para cada 1380 01:06:28,570 --> 01:06:29,820 sobre essas reservas. 1381 01:06:29,820 --> 01:06:34,690 1382 01:06:34,690 --> 01:06:37,130 Mais uma vez, o que estou dizendo agora não é necessariamente a implementação, 1383 01:06:37,130 --> 01:06:39,150 porque você percebe que há um pouco mais formas eficientes de implementá-lo. 1384 01:06:39,150 --> 01:06:41,020 Mas este é um bom lugar para começar. 1385 01:06:41,020 --> 01:06:41,430 >> OK. 1386 01:06:41,430 --> 01:06:42,830 Portanto, estas são as duas tabelas que temos. 1387 01:06:42,830 --> 01:06:44,470 Agora queremos apresentar esta página. 1388 01:06:44,470 --> 01:06:48,510 Qual é o primeiro tipo de consulta seria preciso fazer. 1389 01:06:48,510 --> 01:06:52,190 Em cada página, é assumido que um usuário é logado, que têm o seu ID de usuário. 1390 01:06:52,190 --> 01:06:55,480 Então, qual é o primeiro tipo de query que precisamos fazer? 1391 01:06:55,480 --> 01:06:55,910 É. 1392 01:06:55,910 --> 01:06:56,936 >> AUDIÊNCIA: A ID de usuário. 1393 01:06:56,936 --> 01:07:00,090 >> JASON HIRSCHHORN: Temos a sua ID de usuário, quando estamos começando a código no 1394 01:07:00,090 --> 01:07:01,340 início da nossa página. 1395 01:07:01,340 --> 01:07:03,880 1396 01:07:03,880 --> 01:07:06,470 Então, qual é o primeiro tipo de consulta que precisa fazer, dado ID de um usuário? 1397 01:07:06,470 --> 01:07:09,580 1398 01:07:09,580 --> 01:07:10,530 Fomos ao longo dos quatro tipos. 1399 01:07:10,530 --> 01:07:11,860 Há apenas quatro respostas possíveis. 1400 01:07:11,860 --> 01:07:13,230 >> AUDIÊNCIA: é selecionar um registro. 1401 01:07:13,230 --> 01:07:14,710 >> JASON HIRSCHHORN: Um Select - 1402 01:07:14,710 --> 01:07:19,110 queremos selecionar o usuário do mesa para começar, vamos dizer, 1403 01:07:19,110 --> 01:07:20,040 sua quantidade de dinheiro. 1404 01:07:20,040 --> 01:07:22,450 E nós podemos imprimir a quantidade de dinheiro na parte superior da tela. 1405 01:07:22,450 --> 01:07:22,720 OK. 1406 01:07:22,720 --> 01:07:24,210 Qual é o próximo tipo de query que queremos fazer? 1407 01:07:24,210 --> 01:07:34,650 1408 01:07:34,650 --> 01:07:36,160 >> Temos algumas outras coisas precisamos mostrar. 1409 01:07:36,160 --> 01:07:37,480 Aqueles são salvos em outra tabela. 1410 01:07:37,480 --> 01:07:38,300 Então, como é que vamos conseguir isso? 1411 01:07:38,300 --> 01:07:40,106 >> AUDIÊNCIA: Você seleciona para eles. 1412 01:07:40,106 --> 01:07:42,490 >> JASON HIRSCHHORN: Um Select - mais uma vez, há apenas quatro opções. 1413 01:07:42,490 --> 01:07:44,180 Selecione provavelmente soa como o caminho certo. 1414 01:07:44,180 --> 01:07:47,510 Então, precisamos fazer outra consulta seleção, novamente usando esse ID de usuário. 1415 01:07:47,510 --> 01:07:50,370 E agora, queremos voltar e não apenas um linha, bu todas as linhas que correspondem a nossa 1416 01:07:50,370 --> 01:07:53,200 critérios, onde ID de usuário é igual a 1. 1417 01:07:53,200 --> 01:07:56,790 >> E então nós podemos ir e deixar um loop apenas imprimir todos aqueles para fora na tela, 1418 01:07:56,790 --> 01:07:59,250 talvez imprimir a empresa de cada um deles na tela. 1419 01:07:59,250 --> 01:08:02,430 Ótimo, isso soa como isso é exibindo uma carteira, não muito mais 1420 01:08:02,430 --> 01:08:03,810 complicada do que isso. 1421 01:08:03,810 --> 01:08:07,460 >> OK, o usuário decide, então, que eles ter muito dinheiro sobrando. 1422 01:08:07,460 --> 01:08:09,900 E eles querem comprar alguns mais ações de um estoque. 1423 01:08:09,900 --> 01:08:12,580 Digamos, que já possui estoque desta empresa também. 1424 01:08:12,580 --> 01:08:14,110 >> Então, eles vão para a sua página de compra. 1425 01:08:14,110 --> 01:08:16,830 Eles introdução do nome da empresa. 1426 01:08:16,830 --> 01:08:20,380 Qual é a consulta, após a entrada do nome da empresa, o que você precisa 1427 01:08:20,380 --> 01:08:22,819 executar o próximo? 1428 01:08:22,819 --> 01:08:23,180 É. 1429 01:08:23,180 --> 01:08:23,960 >> AUDIÊNCIA: Update. 1430 01:08:23,960 --> 01:08:26,670 >> JASON HIRSCHHORN: Update - eo que mesa que você quer atualizar? 1431 01:08:26,670 --> 01:08:29,018 >> AUDIÊNCIA: Sua mesa, com base em seu número de ID? 1432 01:08:29,018 --> 01:08:31,880 >> JASON HIRSCHHORN: Então atualizar não a mesa do usuário - 1433 01:08:31,880 --> 01:08:36,029 1434 01:08:36,029 --> 01:08:40,899 assim atualizar a tabela de Stocks, onde a ID do usuário não só corresponde, mas a 1435 01:08:40,899 --> 01:08:43,160 nome estoque também coincide. 1436 01:08:43,160 --> 01:08:45,660 Você vai ter algum valor. 1437 01:08:45,660 --> 01:08:48,270 E então, você vai querer levar esse valor e adicione porém muitas ações que 1438 01:08:48,270 --> 01:08:49,890 quer comprar dele. 1439 01:08:49,890 --> 01:08:53,420 >> Então você não quer cegamente substituir esse valor. 1440 01:08:53,420 --> 01:08:56,330 Mas você pode, de fato, levar essa inicial valorizar e apenas atualizá-lo. 1441 01:08:56,330 --> 01:09:00,790 Você pode fazer como um plus é igual, ao invés de apenas um igual. 1442 01:09:00,790 --> 01:09:03,689 >> O que é algo que embora - se estamos pensando sobre isso e queremos ser 1443 01:09:03,689 --> 01:09:08,090 tão robusto quanto possível - que devemos fazer antes de executar a consulta atualização? 1444 01:09:08,090 --> 01:09:09,859 Eles querem comprar cinco anos de Apple. 1445 01:09:09,859 --> 01:09:11,030 Cada ação da Apple é de US $ 200. 1446 01:09:11,030 --> 01:09:12,762 >> AUDIÊNCIA: Devemos verificar o dinheiro em primeiro lugar. 1447 01:09:12,762 --> 01:09:15,130 >> JASON HIRSCHHORN: Devemos verificar o dinheiro em primeiro lugar. 1448 01:09:15,130 --> 01:09:16,680 Devemos ter certeza de que tem dinheiro suficiente. 1449 01:09:16,680 --> 01:09:20,766 Que tipo de consulta é que podemos executar a certifique-se que tem dinheiro suficiente? 1450 01:09:20,766 --> 01:09:22,143 >> AUDIÊNCIA: Outro Select. 1451 01:09:22,143 --> 01:09:23,680 >> JASON HIRSCHHORN: Um Select - 1452 01:09:23,680 --> 01:09:26,580 vamos selecionar com base em sua ID de usuário, para obter o seu valor em dinheiro. 1453 01:09:26,580 --> 01:09:27,620 Faça alguma matemática rápida. 1454 01:09:27,620 --> 01:09:30,279 E se isso passa reunir, eles têm dinheiro suficiente. 1455 01:09:30,279 --> 01:09:31,580 Então, podemos executar o nosso atualização. 1456 01:09:31,580 --> 01:09:33,850 Ou talvez, se não, nós passamos então. 1457 01:09:33,850 --> 01:09:35,370 Damos-lhes um aviso. 1458 01:09:35,370 --> 01:09:35,710 >> OK. 1459 01:09:35,710 --> 01:09:36,560 Dizem que não tem uma empresa. 1460 01:09:36,560 --> 01:09:37,310 Eles estão comprando uma nova empresa. 1461 01:09:37,310 --> 01:09:39,910 Eles estão comprando Microsoft. 1462 01:09:39,910 --> 01:09:41,910 Que tipo de perguntas que queremos fazer, se eles querem comprar a Microsoft? 1463 01:09:41,910 --> 01:09:43,350 E eles não possuem qualquer Microsoft. 1464 01:09:43,350 --> 01:09:47,520 Não Manu, ninguém mais, ninguém além de Marcus? 1465 01:09:47,520 --> 01:09:48,229 Carlos - 1466 01:09:48,229 --> 01:09:50,870 >> AUDIÊNCIA: A Select, para certificar-se eles têm dinheiro suficiente. 1467 01:09:50,870 --> 01:09:51,770 >> JASON HIRSCHHORN: Parece bom. 1468 01:09:51,770 --> 01:09:54,815 >> AUDIÊNCIA: E então você insere no [inaudível]. 1469 01:09:54,815 --> 01:09:56,500 >> JASON HIRSCHHORN: Exatamente, estamos vai querer inserir 1470 01:09:56,500 --> 01:09:57,800 na tabela de Stocks. 1471 01:09:57,800 --> 01:09:59,370 E vamos deseja inserir. 1472 01:09:59,370 --> 01:10:02,510 Podemos inserir o seu ID de usuário, o nome da empresa, e quantas ações 1473 01:10:02,510 --> 01:10:03,940 eles querem comprar. 1474 01:10:03,940 --> 01:10:08,040 >> Quais são algumas outras operações que são páginas ou funcionalidades que você está 1475 01:10:08,040 --> 01:10:10,420 vai ter que implementar na P-Set 7, de que devemos passar por cima? 1476 01:10:10,420 --> 01:10:12,160 >> AUDIÊNCIA: Na verdade, eu meio que tenho uma pergunta sobre este. 1477 01:10:12,160 --> 01:10:18,000 Antes de apresentar a carteira, deve você verifica o site do Yahoo para 1478 01:10:18,000 --> 01:10:19,920 Verifique se o preço das ações não mudaram? 1479 01:10:19,920 --> 01:10:21,660 >> JASON HIRSCHHORN: É sons como uma boa idéia. 1480 01:10:21,660 --> 01:10:27,260 Então, o que Marcus está dizendo é que, OK, estoque os preços estão mudando constantemente. 1481 01:10:27,260 --> 01:10:32,840 Nos estoques que possuem mesa, a nossa tabela chamada Stocks, nós poderíamos salvar o 1482 01:10:32,840 --> 01:10:35,360 preço das ações que comprou em. 1483 01:10:35,360 --> 01:10:37,990 >> Mas isso não parece que robusta, porque o preço das ações é 1484 01:10:37,990 --> 01:10:39,490 constantemente vai mudar. 1485 01:10:39,490 --> 01:10:41,990 Então, na verdade, você provavelmente não precisa para salvar o preço das ações. 1486 01:10:41,990 --> 01:10:45,230 Mas cada vez que você mostrar o seu carteira, você atualizar ou atualizar o 1487 01:10:45,230 --> 01:10:46,280 preço das ações. 1488 01:10:46,280 --> 01:10:48,720 >> E se você tem - e você já tem. 1489 01:10:48,720 --> 01:10:51,330 Eu sei que todos vocês já olhou no conjuntos de problemas de volta já. 1490 01:10:51,330 --> 01:10:55,410 Você já percebeu que nós escrevemos algum código para você que permitirá que você 1491 01:10:55,410 --> 01:10:57,650 para obter o preço de uma ação, dado o nome de uma empresa. 1492 01:10:57,650 --> 01:10:59,620 >> Então, sim, que provavelmente soa um pouco mais robusto. 1493 01:10:59,620 --> 01:11:04,260 Mas que a tabela não precisa necessariamente para salvar o preço das ações. 1494 01:11:04,260 --> 01:11:04,720 OK. 1495 01:11:04,720 --> 01:11:07,590 Quais são algumas outras funcionalidades que você precisa implementar esta semana que 1496 01:11:07,590 --> 01:11:10,340 podemos falar? 1497 01:11:10,340 --> 01:11:11,590 Eu quero falar sobre eles. 1498 01:11:11,590 --> 01:11:14,342 1499 01:11:14,342 --> 01:11:16,516 >> O que você quer falar? 1500 01:11:16,516 --> 01:11:17,810 É provavelmente neste spec. 1501 01:11:17,810 --> 01:11:20,600 Gostaria apenas de se deslocar até o fundo da especificação e perguntar-me a primeira palavra 1502 01:11:20,600 --> 01:11:21,850 você vê que não faz sentido. 1503 01:11:21,850 --> 01:11:55,130 1504 01:11:55,130 --> 01:11:56,960 Uma outra funcionalidade - 1505 01:11:56,960 --> 01:11:57,840 vamos falar sobre um. 1506 01:11:57,840 --> 01:12:00,775 Vamos começar por aí. 1507 01:12:00,775 --> 01:12:02,065 >> AUDIÊNCIA: Gravar as histórias. 1508 01:12:02,065 --> 01:12:03,960 >> JASON HIRSCHHORN: Gravação a história, a grande. 1509 01:12:03,960 --> 01:12:06,920 Então você vai ter que manter o controle de um histórico de transações. 1510 01:12:06,920 --> 01:12:10,840 1511 01:12:10,840 --> 01:12:14,270 Então você quer manter o controle de todos os vez que comprar ou vender uma ação. 1512 01:12:14,270 --> 01:12:15,160 >> Eu comprei o meu estoque. 1513 01:12:15,160 --> 01:12:18,580 Nós acabamos de dizer, provavelmente faz sentido para incluir um Select, para obter a sua 1514 01:12:18,580 --> 01:12:20,220 quantidade de dinheiro e cheque de volta. 1515 01:12:20,220 --> 01:12:25,270 Provavelmente é inteligente, então para incluir uma inserção ou uma atualização, dependendo 1516 01:12:25,270 --> 01:12:27,720 ou não possui esse estoque. 1517 01:12:27,720 --> 01:12:32,740 Se nós também queremos manter o controle de uma história, como podemos fazer isso? 1518 01:12:32,740 --> 01:12:37,530 1519 01:12:37,530 --> 01:12:38,720 Será que ir na tabela de ações? 1520 01:12:38,720 --> 01:12:39,822 >> AUDIÊNCIA: Não. 1521 01:12:39,822 --> 01:12:42,130 >> JASON HIRSCHHORN: Não, provavelmente vai em uma tabela diferente. 1522 01:12:42,130 --> 01:12:44,040 Porque dizer que você comprar 10 ações da Apple. 1523 01:12:44,040 --> 01:12:45,370 Então você comprar mais de 10 ações. 1524 01:12:45,370 --> 01:12:46,610 Você quer rebocar registros separados. 1525 01:12:46,610 --> 01:12:47,610 Essas são duas operações distintas. 1526 01:12:47,610 --> 01:12:50,510 >> Portanto, temos uma outra tabela, uma mesa de História. 1527 01:12:50,510 --> 01:12:51,880 Então, novamente, nós compramos. 1528 01:12:51,880 --> 01:12:54,080 Executamos um Select, em seguida, uma inserção ou uma atualização. 1529 01:12:54,080 --> 01:12:56,410 O que vamos fazer a seguir? 1530 01:12:56,410 --> 01:13:00,410 Qual é a próxima consulta que executamos quando estamos comprando algo? 1531 01:13:00,410 --> 01:13:01,430 Queremos manter o controle da história. 1532 01:13:01,430 --> 01:13:01,570 É. 1533 01:13:01,570 --> 01:13:05,195 >> AUDIÊNCIA: Você quer manter o controle transações de falha também. 1534 01:13:05,195 --> 01:13:07,700 >> JASON HIRSCHHORN: Bem, antes de dizer que tipo de transação, 1535 01:13:07,700 --> 01:13:11,080 o que queremos - 1536 01:13:11,080 --> 01:13:13,910 Que tipo de consulta, Carlos, faria nos permitem acompanhar 1537 01:13:13,910 --> 01:13:16,216 das coisas em geral? 1538 01:13:16,216 --> 01:13:17,860 Você tem quatro palpites. 1539 01:13:17,860 --> 01:13:18,660 Qual deles você acha? 1540 01:13:18,660 --> 01:13:20,835 >> AUDIÊNCIA: Atualizando. 1541 01:13:20,835 --> 01:13:22,400 >> JASON HIRSCHHORN: Não atualizar. 1542 01:13:22,400 --> 01:13:25,250 Qual é o seu segundo palpite? 1543 01:13:25,250 --> 01:13:26,730 >> AUDIÊNCIA: Seleção. 1544 01:13:26,730 --> 01:13:30,020 >> JASON HIRSCHHORN: Se você quiser manter pista de alguma coisa, você provavelmente vai querer 1545 01:13:30,020 --> 01:13:33,310 anotá-la em algum lugar ou salvá-lo para mais tarde. 1546 01:13:33,310 --> 01:13:37,054 Então, se não atualizar, então - 1547 01:13:37,054 --> 01:13:38,310 >> AUDIÊNCIA: Insira-o. 1548 01:13:38,310 --> 01:13:39,553 >> JASON HIRSCHHORN: Inserir, lá vamos nós. 1549 01:13:39,553 --> 01:13:44,230 Sim, para que você selecione a quantidade de dinheiro que eles têm, parece ótimo. 1550 01:13:44,230 --> 01:13:45,320 Eles não têm dinheiro suficiente. 1551 01:13:45,320 --> 01:13:46,720 Essa transação não está indo trabalhar. 1552 01:13:46,720 --> 01:13:49,440 Não, você não precisa manter o controle de uma transação se ele não funciona. 1553 01:13:49,440 --> 01:13:52,280 Ou você pode, se você quiser dar-lhes um momento difícil. 1554 01:13:52,280 --> 01:13:53,430 Mas você não precisa. 1555 01:13:53,430 --> 01:13:55,820 >> Em seguida, inserir ou atualização em sua mesa de Stocks. 1556 01:13:55,820 --> 01:13:57,260 E agora, você tem a sua outra tabela. 1557 01:13:57,260 --> 01:13:59,790 Você tem a sua tabela de histórico ou o que você quiser chamá-lo. 1558 01:13:59,790 --> 01:14:02,920 E nesse quadro, você vai para inserir uma nova linha. 1559 01:14:02,920 --> 01:14:04,205 >> Isso provavelmente vai ter ID do usuário. 1560 01:14:04,205 --> 01:14:05,840 Provavelmente vai ter o nome do estoque. 1561 01:14:05,840 --> 01:14:08,760 Provavelmente vai ter uma vez que eles fizeram isso. 1562 01:14:08,760 --> 01:14:11,500 E, neste caso, você provavelmente vai deseja inserir o preço. 1563 01:14:11,500 --> 01:14:13,960 Porque, para uma história, você não sabe importo com o que o preço atual é. 1564 01:14:13,960 --> 01:14:17,140 Você se importa o que o preço é quando eles comprado ou vendido algo. 1565 01:14:17,140 --> 01:14:21,530 >> Então parece que, para implementar a compra envolve completamente um número de diferentes 1566 01:14:21,530 --> 01:14:25,530 Consultas SQL, mas honestamente, não que muito geral do código. 1567 01:14:25,530 --> 01:14:26,330 OK. 1568 01:14:26,330 --> 01:14:28,840 E que cuida da história. 1569 01:14:28,840 --> 01:14:30,450 >> Vamos dizer, nós queremos exibir nossa história. 1570 01:14:30,450 --> 01:14:31,670 Nós conversamos sobre a exibição nosso portfólio. 1571 01:14:31,670 --> 01:14:33,902 Como podemos mostrar a nossa história? 1572 01:14:33,902 --> 01:14:36,312 >> AUDIÊNCIA: Presumivelmente cronologicamente. 1573 01:14:36,312 --> 01:14:37,920 >> JASON HIRSCHHORN: Presumivelmente cronologicamente - 1574 01:14:37,920 --> 01:14:39,400 que consulta que você acha que usaria? 1575 01:14:39,400 --> 01:14:40,675 >> AUDIÊNCIA: Uma seleção. 1576 01:14:40,675 --> 01:14:41,840 >> JASON HIRSCHHORN: Um select - 1577 01:14:41,840 --> 01:14:46,590 selecionar talvez todas as linhas dessa tabela que correspondam a identificação do usuário e, em seguida, 1578 01:14:46,590 --> 01:14:49,510 exibi-los em ordem cronológica, Parece bom. 1579 01:14:49,510 --> 01:14:52,590 Será que precisamos de escrever código para classificar por essa lista? 1580 01:14:52,590 --> 01:14:55,084 >> AUDIÊNCIA: Não, porque você disse nós há um ascendente 1581 01:14:55,084 --> 01:14:57,320 e descendente coisa. 1582 01:14:57,320 --> 01:14:58,230 >> JASON HIRSCHHORN: Coisa? 1583 01:14:58,230 --> 01:14:59,190 >> AUDIÊNCIA: Yeah. 1584 01:14:59,190 --> 01:15:01,270 >> JASON HIRSCHHORN: Yeah. 1585 01:15:01,270 --> 01:15:09,300 OK, não vire no código para mim, que classifica manualmente através de suas consultas, 1586 01:15:09,300 --> 01:15:09,820 para classificá-los. 1587 01:15:09,820 --> 01:15:12,480 Esse código já está dado. 1588 01:15:12,480 --> 01:15:15,310 Você pode escrever uma consulta seleção que classifica as coisas. 1589 01:15:15,310 --> 01:15:18,900 Classificá-los de antemão e em seguida, imprimi-los. 1590 01:15:18,900 --> 01:15:22,070 Faz muito mais sentido fazer dessa maneira, do que o contrário. 1591 01:15:22,070 --> 01:15:22,375 Sim. 1592 01:15:22,375 --> 01:15:23,925 >> AUDIÊNCIA: Não precisamos classificá-los de antemão? 1593 01:15:23,925 --> 01:15:25,976 Isso quer dizer que você classificar na base de dados? 1594 01:15:25,976 --> 01:15:30,510 >> JASON HIRSCHHORN: A consulta seleção retorna para você ordenada. 1595 01:15:30,510 --> 01:15:34,990 Então faça isso, ao invés de apenas tê-los voltar para você em uma ordem aleatória e 1596 01:15:34,990 --> 01:15:36,150 em seguida, classificá-los sozinho. 1597 01:15:36,150 --> 01:15:36,405 É. 1598 01:15:36,405 --> 01:15:39,925 >> AUDIÊNCIA: Existe uma maneira de mantê-lo ordenada na própria base de dados, de modo que 1599 01:15:39,925 --> 01:15:41,355 você não tem que classificar que cada vez que você - 1600 01:15:41,355 --> 01:15:43,065 >> AUDIÊNCIA: Você pode inseri-la ordenada? 1601 01:15:43,065 --> 01:15:45,740 >> JASON HIRSCHHORN: Pergunta - 1602 01:15:45,740 --> 01:15:49,796 que importa que as coisas são classificadas no banco de dados? 1603 01:15:49,796 --> 01:15:50,700 >> AUDIÊNCIA: Não. 1604 01:15:50,700 --> 01:15:52,240 >> JASON HIRSCHHORN: Bem, eles são classificados. 1605 01:15:52,240 --> 01:15:53,100 Eles estão ordenados cronologicamente. 1606 01:15:53,100 --> 01:15:55,060 Mas vamos supor que as coisas são classificadas 1607 01:15:55,060 --> 01:15:57,640 cronologicamente, de cima para baixo. 1608 01:15:57,640 --> 01:15:58,930 Nós temos uma forma do Google. 1609 01:15:58,930 --> 01:16:01,400 Sempre que alguém responde ao nosso Google formar, ele só é colocado no 1610 01:16:01,400 --> 01:16:02,480 inferior da tabela. 1611 01:16:02,480 --> 01:16:07,318 Será que isso importa que as coisas são não ordenados cronologicamente? 1612 01:16:07,318 --> 01:16:11,290 >> AUDIÊNCIA: se não é cronológica, você não tem que classificar-lo cada vez 1613 01:16:11,290 --> 01:16:12,920 você levar informações para fora. 1614 01:16:12,920 --> 01:16:16,730 Mas se ele já está classificado, não pode não tem que fazer isso adicional 1615 01:16:16,730 --> 01:16:17,570 chamada de função? 1616 01:16:17,570 --> 01:16:20,690 >> JASON HIRSCHHORN: Então é isso realmente um bom ponto. 1617 01:16:20,690 --> 01:16:23,690 Para nós, programadores, talvez importa. 1618 01:16:23,690 --> 01:16:26,190 E podemos querer encontrar uma base de dados que não resolver as coisas 1619 01:16:26,190 --> 01:16:26,900 cronologicamente. 1620 01:16:26,900 --> 01:16:30,100 Ou montar o nosso banco de dados, por isso mantém coisas classificadas por ID de usuário. 1621 01:16:30,100 --> 01:16:34,060 >> Então, dessa forma, por exemplo, temos 1.000 IDs de usuário. 1622 01:16:34,060 --> 01:16:36,690 Ou Facebook, temos milhões de IDs de usuário. 1623 01:16:36,690 --> 01:16:39,560 Nós não queremos que a nossa mesa para ser apenas aleatória ou nosso banco de dados para ser aleatória. 1624 01:16:39,560 --> 01:16:41,630 Seria bom se todo o IDs de usuário foram ordenados. 1625 01:16:41,630 --> 01:16:46,020 Então nós poderíamos executar pesquisas binárias na nossa mesa e, em seguida, basta localizar o 1626 01:16:46,020 --> 01:16:47,050 pedaço específico. 1627 01:16:47,050 --> 01:16:50,640 >> Então, sim, dependendo - se ampliadas, podemos querer encontrar uma base de dados 1628 01:16:50,640 --> 01:16:53,370 que as coisas mantidos ordenados de uma forma diferente Assim, para que essas consultas 1629 01:16:53,370 --> 01:16:54,140 levaria menos tempo. 1630 01:16:54,140 --> 01:16:56,820 E nós não temos que passar através de nossas banco de dados inteiro em cada linha individual em 1631 01:16:56,820 --> 01:16:58,260 uma determinada tabela. 1632 01:16:58,260 --> 01:17:01,640 Mas o nível que estamos trabalhando, nós não precisa se preocupar em manter 1633 01:17:01,640 --> 01:17:02,270 coisas ordenados. 1634 01:17:02,270 --> 01:17:06,100 Podemos supor que o tempo que leva que consulta para executar vai ser 1635 01:17:06,100 --> 01:17:08,910 negligenciável, dado que estamos lidando. 1636 01:17:08,910 --> 01:17:13,550 Mas sim, ótima idéia - como escalar, pode fazer sentido para projetar nossa 1637 01:17:13,550 --> 01:17:15,390 banco de dados em um pouco de uma maneira diferente. 1638 01:17:15,390 --> 01:17:18,520 >> Uma coisa de design de banco de dados final que eu quero de mencionar também, porque você vai 1639 01:17:18,520 --> 01:17:22,660 ser graduadas, ou marcados em vez disso, em o design do seu banco de dados. 1640 01:17:22,660 --> 01:17:24,160 Nós conversamos sobre isso. 1641 01:17:24,160 --> 01:17:27,490 O dinheiro é único para cada usuário. 1642 01:17:27,490 --> 01:17:30,820 Então você tem uma tabela chamada de caixa que tem o seu ID de usuário e sua quantidade de 1643 01:17:30,820 --> 01:17:33,370 dinheiro e, em seguida, uma tabela chamada usuários que tem seu usuário 1644 01:17:33,370 --> 01:17:34,810 ID e seu nome de usuário. 1645 01:17:34,810 --> 01:17:37,390 >> Essas tabelas mapear em cada outro de um-para-um. 1646 01:17:37,390 --> 01:17:39,520 Ele provavelmente faz sentido para eles ser uma mesa. 1647 01:17:39,520 --> 01:17:42,750 1648 01:17:42,750 --> 01:17:44,830 Então, vamos supor que você tem um usuário tabela que mantém o controle de 1649 01:17:44,830 --> 01:17:46,220 nomes de usuários e dinheiro. 1650 01:17:46,220 --> 01:17:49,960 Agora você tem uma tabela que tem a ações que um indivíduo possui. 1651 01:17:49,960 --> 01:17:52,130 >> E uma pessoa pode possuir mais de um estoque. 1652 01:17:52,130 --> 01:17:54,900 Então, esses não são mapeadas para cada um de um para o outro. 1653 01:17:54,900 --> 01:18:00,140 Não faz sentido ter um gigante tabela com 30 registros que 1654 01:18:00,140 --> 01:18:02,960 tudo repetir um nome de usuário, para que todos repetir uma palavra-passe, que todos 1655 01:18:02,960 --> 01:18:04,680 repetir um número de caixa. 1656 01:18:04,680 --> 01:18:08,360 Mas cada um tem talvez um material diferente nome ou um preço de ação diferente. 1657 01:18:08,360 --> 01:18:11,310 >> Não faz sentido ter que muitas grandes registros. 1658 01:18:11,310 --> 01:18:14,880 Seja inteligente sobre quando você criar estes bancos de dados, de modo que você não está fazendo 1659 01:18:14,880 --> 01:18:20,050 algo bobo como esse, repetindo um monte de informações desnecessárias. 1660 01:18:20,050 --> 01:18:20,570 >> OK. 1661 01:18:20,570 --> 01:18:22,570 Temos dois minutos do fim. 1662 01:18:22,570 --> 01:18:26,580 As pessoas do lado de fora está animado para se juntar nós ou, provavelmente, presumivelmente, 1663 01:18:26,580 --> 01:18:27,650 começar a sua própria classe. 1664 01:18:27,650 --> 01:18:30,110 Alguém tem alguma dúvida antes de terminar? 1665 01:18:30,110 --> 01:18:35,520 1666 01:18:35,520 --> 01:18:38,620 >> OK, este foi realmente um turbilhão através de tudo. 1667 01:18:38,620 --> 01:18:43,510 Peço desculpas que ele tinha que ser tão rápido e que não poderia ser tão hands-on 1668 01:18:43,510 --> 01:18:46,640 esta semana, eu teria gostava de ter sido. 1669 01:18:46,640 --> 01:18:50,610 Mas se você tem alguma dúvida sobre qualquer coisa que passou por cima ou qualquer coisa 1670 01:18:50,610 --> 01:18:52,090 este conjunto de problemas - 1671 01:18:52,090 --> 01:18:54,900 presumindo que você lê-lo e colocá- em um esforço de boa-fé - 1672 01:18:54,900 --> 01:18:57,920 fique à vontade para me enviar e-mail ou contacte-me. 1673 01:18:57,920 --> 01:19:00,960 Estou mais do que feliz em trabalhar com seu código com você ou responder a qualquer 1674 01:19:00,960 --> 01:19:02,330 perguntas que você tem. 1675 01:19:02,330 --> 01:19:06,160 >> Tenha em mente que, esta semana, uma série de seu tempo será gasto na aprendizagem do 1676 01:19:06,160 --> 01:19:10,730 nova sintaxe e tentando entender como escrever consultas SQL ou PHP 1677 01:19:10,730 --> 01:19:14,280 funções ou lidar com um framework MVC. 1678 01:19:14,280 --> 01:19:17,290 Um monte de seu tempo esta semana, provavelmente, não será tentando descobrir o 1679 01:19:17,290 --> 01:19:19,380 lógica maluca que estamos pedindo que você faça. 1680 01:19:19,380 --> 01:19:23,820 Um lote de que nós apenas fomos mais é relativamente simples. 1681 01:19:23,820 --> 01:19:25,790 >> Então, isso não significa que esperar até o último minuto. 1682 01:19:25,790 --> 01:19:29,710 Mas isso não significa ajustar a maneira como você fazer o seu trabalhar nesse sentido, para certificar-se 1683 01:19:29,710 --> 01:19:30,970 você está entendendo e aprender a sintaxe. 1684 01:19:30,970 --> 01:19:33,640 Então você não é, de repente, sabendo exatamente o que você quer fazer, 1685 01:19:33,640 --> 01:19:37,200 mas com nenhuma idéia de como exatamente escrevê-lo. 1686 01:19:37,200 --> 01:19:38,450 OK, eu vou vê-lo na próxima semana. 1687 01:19:38,450 --> 01:19:40,438