1 00:00:00,000 --> 00:00:08,802 2 00:00:08,802 --> 00:00:11,140 >> JASON HIRSCHHORN:欢迎 大家到八周。 3 00:00:11,140 --> 00:00:13,420 我们有一个令人兴奋的一周摆在我们面前。 4 00:00:13,420 --> 00:00:21,390 你们有鸽子在过去的几 讲座到PHP,SQL,HTML,CSS,所以 5 00:00:21,390 --> 00:00:27,270 四大品牌新语言的打算 拿起剩下的这门课程。 6 00:00:27,270 --> 00:00:30,750 我们还将学习一些其他的 课程结束前的语言。 7 00:00:30,750 --> 00:00:35,200 但无论如何,不​​用说,这是一个 非常激动人心的时刻在CS50,现在你 8 00:00:35,200 --> 00:00:41,200 已经掌握了C,表面上,并 移动到编程的网站。 9 00:00:41,200 --> 00:00:45,320 >> 所以本周,我们将继续 通过四个旋风之旅 10 00:00:45,320 --> 00:00:50,200 我刚才提到的语言, HTML,CSS,PHP和SQL。 11 00:00:50,200 --> 00:00:53,340 并希望,我们会留下大量的 时间段的结束谈话 12 00:00:53,340 --> 00:00:58,800 关于本周的P设置和答案 大家有任何问题。 13 00:00:58,800 --> 00:01:03,500 >> 每个星期,同样的资源列表 为你,帮助你用一周的 14 00:01:03,500 --> 00:01:05,780 问题设置和准备 在材料 - 15 00:01:05,780 --> 00:01:09,440 但此周尤其,对于这些 基于web的问题集,有一个 16 00:01:09,440 --> 00:01:12,350 主机的其他资源列 那里,你将有可能 17 00:01:12,350 --> 00:01:13,500 找到难以置信的帮助。 18 00:01:13,500 --> 00:01:14,670 我有他们在这里。 19 00:01:14,670 --> 00:01:17,570 我会向您发送电子邮件本节之后, 而这也上线了。 20 00:01:17,570 --> 00:01:21,700 >> 但在特定的,有很多 伟大的资源在那里。 21 00:01:21,700 --> 00:01:24,380 也有一些不是那么大 的,所以要警惕那些。 22 00:01:24,380 --> 00:01:28,210 但是在这张幻灯片上,我有四个好 资源,每一个的 23 00:01:28,210 --> 00:01:30,600 你会工作语言 这个星期 - 24 00:01:30,600 --> 00:01:35,090 一个参考手册的HT​​ML, 参考表CSS。 25 00:01:35,090 --> 00:01:38,320 这里这个权利是PHP手册。 26 00:01:38,320 --> 00:01:42,110 >> 因此,而不是打字的人,然后一个PHP 命令,这就是你会 27 00:01:42,110 --> 00:01:46,980 去查查函数原型 和例子,也有一些技巧和 28 00:01:46,980 --> 00:01:48,770 技巧使用PHP函数。 29 00:01:48,770 --> 00:01:51,590 你会经常使用这个网站, 所以我鼓励你成为 30 00:01:51,590 --> 00:01:52,280 熟悉它。 31 00:01:52,280 --> 00:01:55,860 它可以是一个有点技术,但它 还提供一吨的资源和 32 00:01:55,860 --> 00:02:00,440 示例所有的功能和 甚至其他,想怎么用数组或 33 00:02:00,440 --> 00:02:01,500 不同类型的变量。 34 00:02:01,500 --> 00:02:03,480 这个网站是PHP非常有帮助。 35 00:02:03,480 --> 00:02:07,160 >> 然后,为SQL,如果你一头扎进这 本周的问题集,你就会知道 36 00:02:07,160 --> 00:02:09,160 我们正在使用的数据库。 37 00:02:09,160 --> 00:02:13,340 我们通过访问数据库 一个比较漂亮的用户界面。 38 00:02:13,340 --> 00:02:15,760 或者说,有一种方法来访问 该数据库。 39 00:02:15,760 --> 00:02:19,670 用户界面是 所谓的phpMyAdmin。 40 00:02:19,670 --> 00:02:23,400 有一个SQL选项卡,我们将 看看今天以后。 41 00:02:23,400 --> 00:02:28,230 >> 而且你可以输入到他们的示例SQL 查询,做事情在你的数据库 42 00:02:28,230 --> 00:02:29,780 然后运行这些查询。 43 00:02:29,780 --> 00:02:31,850 如果他们是正确的,它会 说,这其中的正确。 44 00:02:31,850 --> 00:02:33,480 如果他们不正确,它会 说,这是不正确。 45 00:02:33,480 --> 00:02:37,260 这是一个伟大的地方来练习你 写他们到之前的SQL查询 46 00:02:37,260 --> 00:02:39,990 你的代码,以确保您 有格式正确无误。 47 00:02:39,990 --> 00:02:42,080 >> 最后,在这里另外一个网站。 48 00:02:42,080 --> 00:02:45,390 这是一个网站,你可以 去检查,以确保您的 49 00:02:45,390 --> 00:02:47,520 HTML代码是有效的。 50 00:02:47,520 --> 00:02:51,250 所以,把你的问题之前设置 这一周,确保所有的 51 00:02:51,250 --> 00:02:52,690 你的HTML是有效的。 52 00:02:52,690 --> 00:02:55,840 >> 上周,你曾经的valgrind跑, 请确保你有没有内存泄漏。 53 00:02:55,840 --> 00:02:59,050 这一周,你需要确保所有的 你的代码是有效的HTML5。 54 00:02:59,050 --> 00:03:02,140 如果它不是有效的HTML5,你 要得到分折。 55 00:03:02,140 --> 00:03:03,110 >> 所以一定要确保 - 56 00:03:03,110 --> 00:03:05,700 只是因为它的工作原理不 意味着它是完全有效的。 57 00:03:05,700 --> 00:03:09,770 通过本网站运行代码 将其入伙前 58 00:03:09,770 --> 00:03:10,810 同样,这里的网站。 59 00:03:10,810 --> 00:03:15,150 >> 如果您有任何意见对我来说,我们有 一对夫妇更多的部分留下, 60 00:03:15,150 --> 00:03:18,100 我总是想要做什么,我可以给 为您提供所有的最好的部分 61 00:03:18,100 --> 00:03:19,460 体验成为可能。 62 00:03:19,460 --> 00:03:22,115 因此,让我知道,如果有什么事,我 怎样才能提高或者有 63 00:03:22,115 --> 00:03:24,730 你看,我可以做的更好的事情。 64 00:03:24,730 --> 00:03:25,710 谢谢,AVI。 65 00:03:25,710 --> 00:03:27,610 把它放在网站上。 66 00:03:27,610 --> 00:03:31,870 >> 这是自行车我有我的时候 是,让我们说,四家。 67 00:03:31,870 --> 00:03:34,500 这是一个忍者神龟龟 骑自行车,如果你看不出来, 68 00:03:34,500 --> 00:03:35,345 因为它是一个有点模糊。 69 00:03:35,345 --> 00:03:38,900 您可以独家发售现在得到它 对,我认为,100​​美元左右。 70 00:03:38,900 --> 00:03:42,690 >> 但这个自行车是我想要的功能 你要注意这些 71 00:03:42,690 --> 00:03:43,480 就在这里。 72 00:03:43,480 --> 00:03:44,980 这些都是辅助轮。 73 00:03:44,980 --> 00:03:50,230 到现在为止,你一直手持 通过C.我们已经采取了很长 74 00:03:50,230 --> 00:03:53,610 时间两个月加, 要经过C。 75 00:03:53,610 --> 00:03:55,440 >> 对于这些未来一,语言, 我们不会以 76 00:03:55,440 --> 00:03:56,600 花那么多的时间。 77 00:03:56,600 --> 00:03:58,350 训练车轮脱落。 78 00:03:58,350 --> 00:04:01,360 而且我们要潜入这些 语言快速移动 79 00:04:01,360 --> 00:04:04,720 他们迅速,这是不是说, 我们只是要离开你游泳 80 00:04:04,720 --> 00:04:07,590 在那里,没有办法支持 自己或弄清楚如何将这些 81 00:04:07,590 --> 00:04:08,270 工作语言。 82 00:04:08,270 --> 00:04:10,750 我刚才给你看的列表 的资源来帮助你。 83 00:04:10,750 --> 00:04:14,560 >> 但请记住,PHP是令人难以置信 类似于C。我们就去了 84 00:04:14,560 --> 00:04:15,970 今天和一些不同之处吧。 85 00:04:15,970 --> 00:04:17,990 但在大多数情况下, 有for循环。 86 00:04:17,990 --> 00:04:18,750 还有,如果条件。 87 00:04:18,750 --> 00:04:20,680 >> 当你想解决一个问题, 你要使用 88 00:04:20,680 --> 00:04:22,029 结合这些的。 89 00:04:22,029 --> 00:04:22,920 这是非常相似的。 90 00:04:22,920 --> 00:04:26,040 逻辑应该是非常相似的 你在过去所做的一切。 91 00:04:26,040 --> 00:04:29,810 什么是真正的新本周是 语法以及如何表达自己。 92 00:04:29,810 --> 00:04:32,850 而你想要写一个for循环,但它 可能看起来有点不同。 93 00:04:32,850 --> 00:04:35,910 或者你想创建一个数组,但它 可能看起来有点不同。 94 00:04:35,910 --> 00:04:39,920 >> 所以请记住,前进, 的逻辑是非常相似的什么 95 00:04:39,920 --> 00:04:41,020 你在过去所做的那样。 96 00:04:41,020 --> 00:04:44,030 但你现在将要遇到 很多新的语法。 97 00:04:44,030 --> 00:04:47,600 我们不打算步行通过 语法中的所有元素。 98 00:04:47,600 --> 00:04:53,020 所以,这真的取决于你要弄清楚, 在网上或通过伸出的 99 00:04:53,020 --> 00:04:58,770 讨论或发送电子邮件至我或交谈 彼此,如何在写东西 100 00:04:58,770 --> 00:05:02,580 PHP和如何编写SQL查询 以及如何使用HTML和CSS。 101 00:05:02,580 --> 00:05:06,160 >> 但只要你知道,这并不是说 我们试图扔掉你在那里 102 00:05:06,160 --> 00:05:07,630 再次游泳的鲨鱼。 103 00:05:07,630 --> 00:05:10,600 这就是你将有可能与做 您的最终项目,如果你选择一个 104 00:05:10,600 --> 00:05:15,150 不同的语言,像IOS和 目标C,或者如果你决定开始 105 00:05:15,150 --> 00:05:17,580 规划中的未来 潜入其他语言, 106 00:05:17,580 --> 00:05:19,210 像Python或Ruby。 107 00:05:19,210 --> 00:05:23,380 >> 通常情况下,该逻辑是非常相似的 在所有这些语言,而 108 00:05:23,380 --> 00:05:24,560 语法是有什么不同。 109 00:05:24,560 --> 00:05:27,560 这将是你的,因为 程序员去使用网络 110 00:05:27,560 --> 00:05:30,790 提供给您和数字资源 如何表达你知道如何 111 00:05:30,790 --> 00:05:33,200 发表在C中,在 不同的语言。 112 00:05:33,200 --> 00:05:36,410 所以这是很好的做法,既为您的 最后的项目,并再次,对于 113 00:05:36,410 --> 00:05:40,150 你可能会做 你离开后,CS50。 114 00:05:40,150 --> 00:05:42,550 >> 在我们继续之前,是否有人 有任何疑问什么 115 00:05:42,550 --> 00:05:43,800 我已经做了这么远吗? 116 00:05:43,800 --> 00:05:52,450 117 00:05:52,450 --> 00:05:53,120 大。 118 00:05:53,120 --> 00:05:53,910 让我们继续前进。 119 00:05:53,910 --> 00:05:59,090 >> 首先,我们要简单谈谈 关于chmod命令。 120 00:05:59,090 --> 00:06:02,420 这一点,我们会做的开始 你的问题设置。 121 00:06:02,420 --> 00:06:05,050 一个的第一个指令 对你来说,你下载后, 122 00:06:05,050 --> 00:06:09,280 分配的代码,是改变 档案和权限 123 00:06:09,280 --> 00:06:11,350 您收到的目录。 124 00:06:11,350 --> 00:06:16,430 >> 任何人都可以大胆的猜测或知道 为什么要改变它是非常重要的 125 00:06:16,430 --> 00:06:20,012 某些文件和权限 您的计算机上的目录? 126 00:06:20,012 --> 00:06:20,956 阿维 - 127 00:06:20,956 --> 00:06:24,796 >> 观众:那么没有人,除了 你可以看到你在做什么? 128 00:06:24,796 --> 00:06:25,470 >> JASON HIRSCHHORN:确定。 129 00:06:25,470 --> 00:06:28,330 因此,如果我们想要把东西就 网络,并设置权限 130 00:06:28,330 --> 00:06:30,960 只有你能看到的东西, 再没有其他人可以 131 00:06:30,960 --> 00:06:32,530 看到自己创建的东西。 132 00:06:32,530 --> 00:06:33,380 还有什么? 133 00:06:33,380 --> 00:06:34,320 是啊。 134 00:06:34,320 --> 00:06:37,360 >> 观众:防止别人说你 不想看到的东西,从 135 00:06:37,360 --> 00:06:37,870 看到的东西。 136 00:06:37,870 --> 00:06:38,820 >> JASON HIRSCHHORN:这是真的也。 137 00:06:38,820 --> 00:06:40,730 有可能是一些代码, 你写的,你不 138 00:06:40,730 --> 00:06:42,690 希望人们能看到。 139 00:06:42,690 --> 00:06:46,190 你可能用的人看到的确定 您的HTML和你的JavaScript。 140 00:06:46,190 --> 00:06:50,360 但你的PHP,后端代码,很多的 逻辑到你的代码,也许 141 00:06:50,360 --> 00:06:53,200 存储你的一些密码的东西 为你的数据库,你不 142 00:06:53,200 --> 00:06:55,880 希望人们看到, 类型的信息。 143 00:06:55,880 --> 00:06:59,420 >> 因此,重要的是,每个文件和 我们创建的目录有权限 144 00:06:59,420 --> 00:07:03,660 适用于我们是否要 人们看到这些类型的文件和 145 00:07:03,660 --> 00:07:08,030 目录,并能够访问它们 甚至还有可能改变他们。 146 00:07:08,030 --> 00:07:09,920 >> 因此,有三种类型的 权限。 147 00:07:09,920 --> 00:07:14,980 有一个读权限,这意味着 你可以读一个文件或目录的 148 00:07:14,980 --> 00:07:16,490 该目录的内容。 149 00:07:16,490 --> 00:07:20,820 还有的写权限,这 意味着你可以改变文件或更改 150 00:07:20,820 --> 00:07:24,910 一个目录,然后执行 权限,这意味着你可以 151 00:07:24,910 --> 00:07:31,060 执行一个文件或者说,你 可以移动到一个目录中。 152 00:07:31,060 --> 00:07:34,470 所以,光盘什么的,如果你有 执行它的权限,你可以移动 153 00:07:34,470 --> 00:07:37,300 进入该目录。 154 00:07:37,300 --> 00:07:38,510 >> 这是一个简单的例子。 155 00:07:38,510 --> 00:07:40,700 同样,你已经了解了这 在问题设置。 156 00:07:40,700 --> 00:07:44,630 但是,我创建一个目录 用mkdir命令。 157 00:07:44,630 --> 00:07:46,320 我更改权限。 158 00:07:46,320 --> 00:07:48,505 这两行实际上做 完全相同的事情。 159 00:07:48,505 --> 00:07:52,580 这说明了语法 更改权限,无论你做 160 00:07:52,580 --> 00:07:55,600 在一个+ X或711,这些都是相同的。 161 00:07:55,600 --> 00:07:57,550 >> 我们低头看着这个漂亮的桌子。 162 00:07:57,550 --> 00:07:59,960 我们看到,有用户 第权限。 163 00:07:59,960 --> 00:08:03,280 这就是你的个性, 你的服务器,有可能。 164 00:08:03,280 --> 00:08:05,070 然后有组和其他用户。 165 00:08:05,070 --> 00:08:09,350 那些之间的差异 2顷比较琐碎。 166 00:08:09,350 --> 00:08:11,170 所以一般我们会结块 那些在一起。 167 00:08:11,170 --> 00:08:14,380 >> 但本质上,如果我们有一个文件 所谓包括我们要 168 00:08:14,380 --> 00:08:18,760 能够编辑自己,我们要 他人能够执行, 169 00:08:18,760 --> 00:08:20,560 它的许可711。 170 00:08:20,560 --> 00:08:22,390 而且我们看到,下来 此处在此表中。 171 00:08:22,390 --> 00:08:24,730 我们有读,写和执行。 172 00:08:24,730 --> 00:08:26,790 对于我们每个人,我们要 能够做到这些。 173 00:08:26,790 --> 00:08:30,160 集团和其他人,我们只希望 它们能够执行。 174 00:08:30,160 --> 00:08:33,860 >> 我们翻译的方式 成若干 175 00:08:33,860 --> 00:08:36,870 权限是通过二进制。 176 00:08:36,870 --> 00:08:41,780 所以,如果我们有三个的,这是一个1 在那些列,1的二进制补码 177 00:08:41,780 --> 00:08:43,049 柱,1四肢列。 178 00:08:43,049 --> 00:08:45,180 这是7在那里。 179 00:08:45,180 --> 00:08:47,450 而这个权限是1。 180 00:08:47,450 --> 00:08:48,390 此权限是1。 181 00:08:48,390 --> 00:08:54,200 因此,当711是一样的给 自己读,写和执行, 182 00:08:54,200 --> 00:08:56,660 和其他人的执行权限。 183 00:08:56,660 --> 00:08:59,180 >> 这条线就在这里,我们一般 将具有读取和写入时,我们 184 00:08:59,180 --> 00:09:00,250 创建目录。 185 00:09:00,250 --> 00:09:04,650 所以,这条线在这里只是增加了执行 特权给大家。 186 00:09:04,650 --> 00:09:07,450 所以这将是类似于在 除了我们所拥有的, 187 00:09:07,450 --> 00:09:09,930 加1,1,1到大家。 188 00:09:09,930 --> 00:09:13,880 >> 而这一点,这是不必要的 添加读取和写入。 189 00:09:13,880 --> 00:09:16,130 但是,如果你要使用的号码, 你不能只是补充一下。 190 00:09:16,130 --> 00:09:19,070 您覆盖任何人的许可 那里与新实施这些 191 00:09:19,070 --> 00:09:20,920 数你给。 192 00:09:20,920 --> 00:09:21,930 这是相当快的。 193 00:09:21,930 --> 00:09:24,115 没有任何人有任何疑问, 有关更改权限? 194 00:09:24,115 --> 00:09:28,460 195 00:09:28,460 --> 00:09:28,950 >> 确定。 196 00:09:28,950 --> 00:09:32,480 如果我有一个PHP文件,有什么权限 我希望它有哪些? 197 00:09:32,480 --> 00:09:36,638 198 00:09:36,638 --> 00:09:38,780 这是问题的集中规范。 199 00:09:38,780 --> 00:09:41,590 所以,你可以看看规格和 然后读了我答案。 200 00:09:41,590 --> 00:09:45,820 201 00:09:45,820 --> 00:09:48,605 >> 观众:你希望用户 有读写权限。 202 00:09:48,605 --> 00:09:51,080 和你想每个人都 别的什么都没有。 203 00:09:51,080 --> 00:09:53,060 >> JASON HIRSCHHORN:什么 号码是什么? 204 00:09:53,060 --> 00:09:53,480 >> 观众:600。 205 00:09:53,480 --> 00:09:54,840 >> JASON HIRSCHHORN:600。 206 00:09:54,840 --> 00:09:59,550 所以,CHMOD 600 - 每当你打印 一个PHP文件,chmod将其转换600。 207 00:09:59,550 --> 00:10:00,370 确定。 208 00:10:00,370 --> 00:10:01,890 我有一个目录。 209 00:10:01,890 --> 00:10:04,870 有人除了杰夫, 我有一个文件夹。 210 00:10:04,870 --> 00:10:08,060 我想将什么权限 给该文件夹 - 211 00:10:08,060 --> 00:10:11,620 也是在问题设置规范, 右下方这个答案或 212 00:10:11,620 --> 00:10:14,840 以前的答案? 213 00:10:14,840 --> 00:10:16,160 也有可能在幻灯片上 - 214 00:10:16,160 --> 00:10:16,450 马库斯。 215 00:10:16,450 --> 00:10:17,230 >> 观众:对于 216 00:10:17,230 --> 00:10:18,180 文件夹,它是711。 217 00:10:18,180 --> 00:10:19,590 JASON HIRSCHHORN:711 - 218 00:10:19,590 --> 00:10:21,230 这样一个文件夹,你想给711。 219 00:10:21,230 --> 00:10:25,280 你想成为能够读取该文件夹, 更改目录,进入 220 00:10:25,280 --> 00:10:25,785 该文件夹。 221 00:10:25,785 --> 00:10:28,865 和你想别人都可以 到该文件夹​​中导航,但 222 00:10:28,865 --> 00:10:30,790 不一定会改变其内容。 223 00:10:30,790 --> 00:10:33,720 怎么样一个非PHP文件, 说,一个JavaScript文件? 224 00:10:33,720 --> 00:10:36,090 我们想要怎样的权限 给该类型的文件? 225 00:10:36,090 --> 00:10:37,020 >> 观众:644。 226 00:10:37,020 --> 00:10:38,030 >> JASON HIRSCHHORN:644 - 227 00:10:38,030 --> 00:10:40,010 我们为什么想给它644? 228 00:10:40,010 --> 00:10:42,880 >> 观众:为了让其他人阅读。 229 00:10:42,880 --> 00:10:44,840 和你读或写。 230 00:10:44,840 --> 00:10:48,540 >> JASON HIRSCHHORN:那么好吧,大家 其他人可以阅读该JavaScript文件。 231 00:10:48,540 --> 00:10:51,420 你可以改变,除了 要能够读取它。 232 00:10:51,420 --> 00:10:54,970 所以最常见的错误的人之一 有这个问题的设置及其 233 00:10:54,970 --> 00:10:58,880 最后的项目,如果它是一个基于Web的最终 项目,他们将不会设置 234 00:10:58,880 --> 00:11:00,170 正确的权限。 235 00:11:00,170 --> 00:11:03,180 并且他们将无法 看到他们的网站。 236 00:11:03,180 --> 00:11:04,840 或者他们的网站的特定部分。 237 00:11:04,840 --> 00:11:06,930 >> 因此,请确保您的设置 权限正确。 238 00:11:06,930 --> 00:11:10,730 不要只是假设,它会 会自动为你做它。 239 00:11:10,730 --> 00:11:11,500 >> 确定。 240 00:11:11,500 --> 00:11:15,100 这是一个很小的事情,我们花了 时间上量好,所以 241 00:11:15,100 --> 00:11:16,190 我们可以钉它。 242 00:11:16,190 --> 00:11:18,000 让我们继续为HTML。 243 00:11:18,000 --> 00:11:20,430 >> 再次,对于这些未来四个主题, 我们要通过他们去 244 00:11:20,430 --> 00:11:21,600 比较快。 245 00:11:21,600 --> 00:11:24,980 所以,请随时阻止我在任何 时间,如果您有任何疑问, 246 00:11:24,980 --> 00:11:27,900 无论他们是关系到我的支付 或从东西或讲座 247 00:11:27,900 --> 00:11:29,440 即使从问题设置。 248 00:11:29,440 --> 00:11:31,690 阻止我只要你需要。 249 00:11:31,690 --> 00:11:34,370 当我们到了年底,我们就 开始准备过的问题集。 250 00:11:34,370 --> 00:11:38,100 >> 这样的HTML代表超文本 标记语言。 251 00:11:38,100 --> 00:11:41,360 这是不是一种编程语言。 252 00:11:41,360 --> 00:11:45,800 它所做的就是结构内容 并且还提供了一些元数据。 253 00:11:45,800 --> 00:11:52,340 因此,例如,据推测,许多 您以前使用过Facebook的。 254 00:11:52,340 --> 00:11:56,810 并且可以包括链接,或者你 可以把一个链接作为您的状态。 255 00:11:56,810 --> 00:11:59,070 >> 然后,你会发现链接 总是有一个漂亮的图片 256 00:11:59,070 --> 00:12:00,450 它和一些文字。 257 00:12:00,450 --> 00:12:03,040 通常,这是一些元数据 对于一个网页。 258 00:12:03,040 --> 00:12:05,250 而且它是Facebook的特定的元数据。 259 00:12:05,250 --> 00:12:07,780 然后,当Facebook被阅读了 页面并插入该链接,它 260 00:12:07,780 --> 00:12:10,780 看起来对于特定的元数据,因此它 知道要显示什么画面,什么 261 00:12:10,780 --> 00:12:13,820 标题来显示,并且什么 抽象的文字来显示。 262 00:12:13,820 --> 00:12:17,760 >> 因此,我们可以包括元数据 我们的网页使用HTML。 263 00:12:17,760 --> 00:12:21,190 它也可以帮助我们结构 的含量,通常,什么 264 00:12:21,190 --> 00:12:25,400 我们想要去的地方。 265 00:12:25,400 --> 00:12:28,240 >> 在HTML中一切都是​​一个元素。 266 00:12:28,240 --> 00:12:30,690 和元素在这里 - 267 00:12:30,690 --> 00:12:33,410 这CS50,文字的元素。 268 00:12:33,410 --> 00:12:35,140 而且它有一些标签。 269 00:12:35,140 --> 00:12:36,690 这个它有一个标签。 270 00:12:36,690 --> 00:12:41,730 我们注意到有一个一个的 开始,然后斜线的,所以 271 00:12:41,730 --> 00:12:43,960 关闭一个标签底。 272 00:12:43,960 --> 00:12:46,800 有时候,有没有一个开放的 标记和结束标记。 273 00:12:46,800 --> 00:12:49,040 这里还有一件事。 274 00:12:49,040 --> 00:12:50,640 >> 我们会看到这样一个例子 对下一张幻灯片。 275 00:12:50,640 --> 00:12:52,640 所以,你不需要一个开放 和结束标记。 276 00:12:52,640 --> 00:12:59,570 但对于这一点,我们住这个 在一个锚标记CS50元素。 277 00:12:59,570 --> 00:13:03,270 而且基本上,这些标记告诉 浏览器如何处理 278 00:13:03,270 --> 00:13:04,700 的特定元素。 279 00:13:04,700 --> 00:13:07,380 >> 如此反复,CS50是文本 我们将要看到的。 280 00:13:07,380 --> 00:13:10,060 它将会是 一种锚。 281 00:13:10,060 --> 00:13:13,920 锚本质上是用来 对于链接的东西。 282 00:13:13,920 --> 00:13:16,000 特别是,你可以 已经知道,这是一个 283 00:13:16,000 --> 00:13:18,950 链接到CS50主页。 284 00:13:18,950 --> 00:13:23,160 >> 标签的下一部分 - 或一般, 标签的一部分是 285 00:13:23,160 --> 00:13:24,290 属性。 286 00:13:24,290 --> 00:13:27,080 我们看到这里,那 该标签有一个 287 00:13:27,080 --> 00:13:29,680 属性,这个href属性。 288 00:13:29,680 --> 00:13:32,000 他们修改特定的标签。 289 00:13:32,000 --> 00:13:36,100 事实上,如果你去的一 网站或我给你的参考 290 00:13:36,100 --> 00:13:39,480 之前或查找标签在线, 你会发现有一吨的 291 00:13:39,480 --> 00:13:41,010 潜在的属性。 292 00:13:41,010 --> 00:13:42,310 >> 这大概是1 最常见的。 293 00:13:42,310 --> 00:13:46,090 这是告诉我创建一个 链接到该特定网站。 294 00:13:46,090 --> 00:13:50,260 和一般属性给出, 如果不是全部发出, 295 00:13:50,260 --> 00:13:52,350 在键 - 值对。 296 00:13:52,350 --> 00:13:55,380 >> 因此,这里的关键,HREF。 297 00:13:55,380 --> 00:13:57,320 和值是在这里正确的。 298 00:13:57,320 --> 00:14:01,960 而这会派上用场,后来, 当我们开始使用一些库 299 00:14:01,960 --> 00:14:07,280 帮助我们的代码中的JavaScript 或写HTML内容。 300 00:14:07,280 --> 00:14:11,120 我们经常将是 - 就像我们 会做阵列支架0和 301 00:14:11,120 --> 00:14:12,340 会给我们一些价值。 302 00:14:12,340 --> 00:14:17,190 >> 在未来,我们会做很多的 东西喜欢的事支架的href。 303 00:14:17,190 --> 00:14:21,180 而这会给我们的价值 HREF,或者如果我们要更新的href 304 00:14:21,180 --> 00:14:23,980 键,然后给它 一个特定的值。 305 00:14:23,980 --> 00:14:28,915 所以就像使用数组,我们不得不 键0或1键或2键,或即使有 306 00:14:28,915 --> 00:14:33,480 哈希表,好了,你的哈希表 还有,你可能有 - 它 307 00:14:33,480 --> 00:14:35,790 是一个数组,所以0键,键1,键2。 308 00:14:35,790 --> 00:14:38,480 >> 该指数在那里,我们可以 认为那是一个关键。 309 00:14:38,480 --> 00:14:40,180 和值是什么 被存储在那里。 310 00:14:40,180 --> 00:14:42,760 所有这些属性 是键 - 值对。 311 00:14:42,760 --> 00:14:47,370 而这将是重要的改变 他们或更新它们或 312 00:14:47,370 --> 00:14:51,020 后来将它们插入。 313 00:14:51,020 --> 00:14:53,990 >> 最后,你已经看到了这个结构 之前,但是这是最基本的 314 00:14:53,990 --> 00:14:55,350 HTML页面的结构。 315 00:14:55,350 --> 00:14:58,700 在顶部,我们告诉你, 这其实就是HTML。 316 00:14:58,700 --> 00:15:01,910 然后我们有一个开放的HTML 标记和结束HTML标记。 317 00:15:01,910 --> 00:15:04,940 所以一切的内 这是HTML。 318 00:15:04,940 --> 00:15:08,960 >> 我们看到的头部和主体。 319 00:15:08,960 --> 00:15:12,350 您的文档的头部 一般包括什么? 320 00:15:12,350 --> 00:15:16,980 321 00:15:16,980 --> 00:15:20,995 任何猜测为你 放在头上? 322 00:15:20,995 --> 00:15:23,060 >> 观众:你把标题和风格。 323 00:15:23,060 --> 00:15:23,790 >> JASON HIRSCHHORN:标题。 324 00:15:23,790 --> 00:15:26,110 这是一个伟大的猜测。 325 00:15:26,110 --> 00:15:27,200 我可能已经放倒你去的。 326 00:15:27,200 --> 00:15:28,150 什么是一些其他的东西? 327 00:15:28,150 --> 00:15:30,351 我们提到的其中之一, 可能去的头部。 328 00:15:30,351 --> 00:15:33,057 329 00:15:33,057 --> 00:15:35,225 >> 观众:他说,款式。 330 00:15:35,225 --> 00:15:36,240 >> JASON HIRSCHHORN:样式 - 331 00:15:36,240 --> 00:15:41,050 所以如果你想在一个JavaScript链接 或什至一个CSS,而你说 332 00:15:41,050 --> 00:15:42,610 约当你在谈论 有关样式。 333 00:15:42,610 --> 00:15:45,670 另一个文件,你想在一个链接 文件外,也可能会 334 00:15:45,670 --> 00:15:46,920 在头部。 335 00:15:46,920 --> 00:15:48,660 336 00:15:48,660 --> 00:15:51,070 >> 还有什么? 337 00:15:51,070 --> 00:15:52,960 我们提到了几个幻灯片 的事情前一个 338 00:15:52,960 --> 00:15:54,510 HTML可以为你做什么。 339 00:15:54,510 --> 00:15:58,180 340 00:15:58,180 --> 00:16:01,240 它可以提供 - 341 00:16:01,240 --> 00:16:02,874 开始于一个的M - 342 00:16:02,874 --> 00:16:03,820 >> 观众:元数据。 343 00:16:03,820 --> 00:16:06,170 >> JASON HIRSCHHORN:元数据 - 因此很多 元数据将在头去, 344 00:16:06,170 --> 00:16:08,990 因为这将不一定需要 是你的代码的身体的一部分。 345 00:16:08,990 --> 00:16:11,820 这是一般 - 身体是 内容,有人看到的。 346 00:16:11,820 --> 00:16:14,210 因此我只是给了答案 我的下一个问题。 347 00:16:14,210 --> 00:16:17,770 但在体内通常的含量 那将被显示 348 00:16:17,770 --> 00:16:19,750 上的网页。 349 00:16:19,750 --> 00:16:26,120 >> 正如我们将看到的,复杂的网站 往往混为一谈,或改变了什么 350 00:16:26,120 --> 00:16:27,170 它们放置在头部和主体。 351 00:16:27,170 --> 00:16:30,360 但是总体来说,头部包含的东西 用户是不会 352 00:16:30,360 --> 00:16:31,290 在屏幕上看到。 353 00:16:31,290 --> 00:16:34,150 它连接在其他文件 并提供元数据。 354 00:16:34,150 --> 00:16:37,690 然而,体内含有的一切 用户将要看到的。 355 00:16:37,690 --> 00:16:39,270 任何知道这个p标签意味着什么? 356 00:16:39,270 --> 00:16:41,660 >> 观众:段落? 357 00:16:41,660 --> 00:16:42,780 >> 观众:打印。 358 00:16:42,780 --> 00:16:44,120 >> 观众:这并不意味着打印。 359 00:16:44,120 --> 00:16:45,380 >> 观众:这是否意味着段落? 360 00:16:45,380 --> 00:16:47,620 >> JASON HIRSCHHORN:段落 - 所以这是一个段落。 361 00:16:47,620 --> 00:16:50,920 而这个p标签,我可能刚输入 这在屏幕上,然后 362 00:16:50,920 --> 00:16:52,630 包括换行符 在它的结束。 363 00:16:52,630 --> 00:16:54,380 任何人都知道如何将 换行符? 364 00:16:54,380 --> 00:16:55,240 >> 观众:公关 - 365 00:16:55,240 --> 00:16:55,700 >> JASON HIRSCHHORN:公关 - 366 00:16:55,700 --> 00:16:57,080 >> 观众:斜线公关? 367 00:16:57,080 --> 00:17:00,120 >> JASON HIRSCHHORN:公关斜线 代表换行符。 368 00:17:00,120 --> 00:17:03,270 但段有具体的 格式。 369 00:17:03,270 --> 00:17:06,060 我们会得到一个格式化 第二,当我们谈论的CSS。 370 00:17:06,060 --> 00:17:09,900 但一切这些p标签内 也会有一些默认的格式 371 00:17:09,900 --> 00:17:13,210 与它相关的,可能是一些 之间不同间距的 372 00:17:13,210 --> 00:17:15,069 段落。 373 00:17:15,069 --> 00:17:19,410 而这将是区分单程 代码块。 374 00:17:19,410 --> 00:17:20,980 >> 任何其他标​​记 - 375 00:17:20,980 --> 00:17:24,584 什么是你见过的其他标签? 376 00:17:24,584 --> 00:17:26,609 >> JASON HIRSCHHORN:通过H6 H1。 377 00:17:26,609 --> 00:17:28,460 通过H6 H1,和那是什么? 378 00:17:28,460 --> 00:17:31,560 >> 观众:这将意味着有多大 和大胆的字母。 379 00:17:31,560 --> 00:17:32,650 >> JASON HIRSCHHORN:对, 它代表了头。 380 00:17:32,650 --> 00:17:34,960 所以header1的是一个很大的标题。 381 00:17:34,960 --> 00:17:40,840 它可能会在默认情况下,要大胆,一 大字体的大小,大概集中在 382 00:17:40,840 --> 00:17:44,030 在屏幕上,一路下跌到H6, 它是一个较小的字体大小,减 383 00:17:44,030 --> 00:17:44,780 强调。 384 00:17:44,780 --> 00:17:50,290 当然,你可以在你的CSS文件 或者在某个地方你的代码 - 这, 385 00:17:50,290 --> 00:17:53,830 再次,我们会得到,在第二 - 改一下默认行为 386 00:17:53,830 --> 00:17:55,780 的一个h1标签。 387 00:17:55,780 --> 00:18:01,040 >> 但请记住,铬,野生动物园, 火狐,IE浏览器都有 388 00:18:01,040 --> 00:18:04,030 默认查找了很多 这些标准标签。 389 00:18:04,030 --> 00:18:07,110 您可以再次,永远改变 他们的样子。 390 00:18:07,110 --> 00:18:09,955 任何其他标​​记,每个人都 已经见过? 391 00:18:09,955 --> 00:18:10,350 是啊 - 392 00:18:10,350 --> 00:18:11,530 >> 观众:一个DIV的网站。 393 00:18:11,530 --> 00:18:15,830 >> JASON HIRSCHHORN:一个div标签 - div标签 没有任何内建的格式,每 394 00:18:15,830 --> 00:18:21,850 本身,用于阻挡 不同类型的代码。 395 00:18:21,850 --> 00:18:22,980 任何其他标​​记? 396 00:18:22,980 --> 00:18:23,390 是。 397 00:18:23,390 --> 00:18:24,333 >> 观众:李 - 398 00:18:24,333 --> 00:18:24,850 >> JASON HIRSCHHORN:李 - 399 00:18:24,850 --> 00:18:25,580 什么是礼呢? 400 00:18:25,580 --> 00:18:26,210 >> 观众:列表。 401 00:18:26,210 --> 00:18:26,930 >> 观众:列表 402 00:18:26,930 --> 00:18:29,510 >> JASON HIRSCHHORN:li为 对于列表中的元素。 403 00:18:29,510 --> 00:18:30,720 有两种类型的列表。 404 00:18:30,720 --> 00:18:31,970 哪两种类型? 405 00:18:31,970 --> 00:18:34,165 406 00:18:34,165 --> 00:18:35,806 >> 观众:有序和无序。 407 00:18:35,806 --> 00:18:37,780 >> JASON HIRSCHHORN:有序和 无序的 - 所以UL看台 408 00:18:37,780 --> 00:18:38,560 对于无序列表。 409 00:18:38,560 --> 00:18:41,120 这就是,如果你想有一个子弹 点,子弹的列表。 410 00:18:41,120 --> 00:18:43,180 有序列表是一个编号的列表。 411 00:18:43,180 --> 00:18:47,930 所以你会做一个开放的UL标签,然后 列表中的元素吨,然后 412 00:18:47,930 --> 00:18:50,450 关闭UL标记。以及将 创建一个无序列表。 413 00:18:50,450 --> 00:18:52,380 >> 我们将看到一些例子 的HTML在一个位。 414 00:18:52,380 --> 00:18:55,800 但在此之前,我想要得到的CSS。 415 00:18:55,800 --> 00:18:58,530 和CSS代表层叠 样式表。 416 00:18:58,530 --> 00:19:03,010 这是非常密切相关 以HTML,但略有不同。 417 00:19:03,010 --> 00:19:06,920 这可以帮助您格式化所有的内容 该HTML结构。 418 00:19:06,920 --> 00:19:14,940 >> 所以在CSS中,我们一般不希望 每一个样式单头或每 419 00:19:14,940 --> 00:19:17,250 单一的形象或每 单款。 420 00:19:17,250 --> 00:19:21,210 我们希望一些风格元素 或者一个特定的元素。 421 00:19:21,210 --> 00:19:25,250 和我们一路样式的特定 元素是给它一个ID。 422 00:19:25,250 --> 00:19:26,070 >> 所以这是一个属性。 423 00:19:26,070 --> 00:19:27,960 它有一个键和一个值。 424 00:19:27,960 --> 00:19:29,130 ID是关键。 425 00:19:29,130 --> 00:19:30,220 标志是价值。 426 00:19:30,220 --> 00:19:32,410 我随机挑取的标志。 427 00:19:32,410 --> 00:19:36,780 如果你给的东西一个ID, 通常,只应给予 428 00:19:36,780 --> 00:19:38,800 给一个元素。 429 00:19:38,800 --> 00:19:42,340 >> 然后,在你的样式表,你可以 风格,特定的元素,然而 430 00:19:42,340 --> 00:19:44,090 你希望它看起来。 431 00:19:44,090 --> 00:19:49,560 如果你想要的款式了一些 元素,也许这是一个特定的类 432 00:19:49,560 --> 00:19:51,310 头的,只有你的头的部分。 433 00:19:51,310 --> 00:19:56,780 也许这是一个头和一个图像和 段你都希望为中心。 434 00:19:56,780 --> 00:20:00,700 然后,你可以给这些组 元素的所有类。 435 00:20:00,700 --> 00:20:04,300 而且你可以给这个类 特定的样式。 436 00:20:04,300 --> 00:20:08,860 因此,一个ID和一个类两种方法 打破你的代码,这样你就可以成为帮助 437 00:20:08,860 --> 00:20:11,990 更具体的在你的风格。 438 00:20:11,990 --> 00:20:13,830 >> 有三种方法来样式。 439 00:20:13,830 --> 00:20:17,530 第一个是,用 这个样式属性。 440 00:20:17,530 --> 00:20:21,200 所以你看,风格关键是风格。 441 00:20:21,200 --> 00:20:24,370 样式值实际上是 另一个关键值列表。 442 00:20:24,370 --> 00:20:26,570 >> 在这种情况下,我选择了 一键,文本对齐。 443 00:20:26,570 --> 00:20:27,730 我说,中心。 444 00:20:27,730 --> 00:20:30,280 你可能会问自己在这个 一点,我怎么会知道 445 00:20:30,280 --> 00:20:31,230 文本对齐。 446 00:20:31,230 --> 00:20:32,280 这是什么,即使做? 447 00:20:32,280 --> 00:20:35,350 这是一个很大的问题要问,以及 我们去到那里在第二。 448 00:20:35,350 --> 00:20:39,740 所以这就是样式的东西的一种方式, 只要给它的样式属性。 449 00:20:39,740 --> 00:20:43,490 >> 另一种样式的东西是 - 这是AKSHAR前面提到的。 450 00:20:43,490 --> 00:20:49,660 您可以使用样式标记,并将该 在你的HTML文档的头部。 451 00:20:49,660 --> 00:20:52,220 所以你基本上是说, 这里里面的内容 452 00:20:52,220 --> 00:20:53,870 是一些样式的内容。 453 00:20:53,870 --> 00:20:59,520 而对于该格式是你的事 想要的款式,然后里面 454 00:20:59,520 --> 00:21:03,460 大括号,键值对的 属性,你想给 455 00:21:03,460 --> 00:21:05,920 该特定类型的元素。 456 00:21:05,920 --> 00:21:07,370 >> 最后,这是 最常用的方法。 457 00:21:07,370 --> 00:21:10,320 这是我们的方式 做到这一点P中集7。 458 00:21:10,320 --> 00:21:12,370 这是一个外部的样式表。 459 00:21:12,370 --> 00:21:14,370 所以,你有一个。css文件。 460 00:21:14,370 --> 00:21:18,050 和它里面,你会看到很多的 事情是这样的,这个名字 461 00:21:18,050 --> 00:21:22,730 某些类型的元素或一个ID或 一个类,然后,卷曲的内 462 00:21:22,730 --> 00:21:28,040 大括号,键值对的列表。 463 00:21:28,040 --> 00:21:30,065 >> 当然,如果你创建一个外部 文件,你要 464 00:21:30,065 --> 00:21:31,310 需要包括它 - 465 00:21:31,310 --> 00:21:34,860 犀利包括,那会 成为了C比喻 - 466 00:21:34,860 --> 00:21:36,250 在你的HTML文件。 467 00:21:36,250 --> 00:21:39,820 所以,你必须包含这个 在你的HTML文件中的代码。 468 00:21:39,820 --> 00:21:46,080 这是该文件的名称和 假设它是在同一个目录下。 469 00:21:46,080 --> 00:21:47,100 >> 确定。 470 00:21:47,100 --> 00:21:48,200 这是一个很多。 471 00:21:48,200 --> 00:21:52,440 而我们现在要呼吸,并期待 在一些真正的,活的网站, 472 00:21:52,440 --> 00:21:53,720 探索这更多。 473 00:21:53,720 --> 00:21:55,470 但在此之前,我们这样做,是否有人 有什么问题吗? 474 00:21:55,470 --> 00:22:00,830 475 00:22:00,830 --> 00:22:04,970 >> 所以,如果你想这样做,随着 我,我们可以去家电。 476 00:22:04,970 --> 00:22:08,950 而我选择了CS50主页。 477 00:22:08,950 --> 00:22:10,020 你可以与任何网站做到这一点。 478 00:22:10,020 --> 00:22:13,070 但我们为什么不开始 在CS50的主页? 479 00:22:13,070 --> 00:22:14,650 >> 让我们来刷新。 480 00:22:14,650 --> 00:22:18,030 其实我强烈建议你在干什么 这个跟我一起,因为我们 481 00:22:18,030 --> 00:22:22,720 打算现在要做的将是 令人难以置信的方便的你,不仅在 482 00:22:22,720 --> 00:22:24,450 P-7集,但在P-8设置为好。 483 00:22:24,450 --> 00:22:24,810 是啊。 484 00:22:24,810 --> 00:22:29,560 >> 观众:有没有办法做评论 在HTML中,不使用PHP? 485 00:22:29,560 --> 00:22:31,130 >> JASON HIRSCHHORN:是的,可以 在HTML中提出意见。 486 00:22:31,130 --> 00:22:32,690 >> 观众:什么是语法? 487 00:22:32,690 --> 00:22:34,340 >> 观众:感叹号短跑冲刺。 488 00:22:34,340 --> 00:22:36,125 >> 观众:确定。 489 00:22:36,125 --> 00:22:37,100 >> JASON HIRSCHHORN:是的。 490 00:22:37,100 --> 00:22:38,350 即语法。 491 00:22:38,350 --> 00:22:40,630 492 00:22:40,630 --> 00:22:41,900 您可以在HTML中提出意见。 493 00:22:41,900 --> 00:22:43,310 你可以在PHP中提出意见。 494 00:22:43,310 --> 00:22:46,590 >> 正如你所看到的,在HTML注释会 仍然显示,当我们看 495 00:22:46,590 --> 00:22:49,960 某网站的HTML源代码。 496 00:22:49,960 --> 00:22:51,610 因此,这cs50.net。 497 00:22:51,610 --> 00:22:57,360 如果你右击在最现代的 在几乎所有的网页浏览器,可以查看 498 00:22:57,360 --> 00:22:58,820 该页面的源代码。 499 00:22:58,820 --> 00:23:01,480 因此,让我们做到这一点的CS50。 500 00:23:01,480 --> 00:23:05,060 >> 和你瞧,我们 看到一个巨大的东西。 501 00:23:05,060 --> 00:23:07,420 CS50实际上看起来相当不错。 502 00:23:07,420 --> 00:23:08,920 很多网站会不会 看看这个漂亮的。 503 00:23:08,920 --> 00:23:10,540 如果你去谷歌的主页 并打开它。 504 00:23:10,540 --> 00:23:11,960 它不会看这个不错的。 505 00:23:11,960 --> 00:23:13,830 >> 但你注意到,在顶部 - 506 00:23:13,830 --> 00:23:16,650 这是有点小。 507 00:23:16,650 --> 00:23:17,900 让我们把这个更大的。 508 00:23:17,900 --> 00:23:22,660 509 00:23:22,660 --> 00:23:23,570 确定。 510 00:23:23,570 --> 00:23:26,660 在顶部,DOCTYPE HTML, 这是熟悉的。 511 00:23:26,660 --> 00:23:30,650 然后,我们看到了开放的HTML标签和 头,就在这里,所有的 512 00:23:30,650 --> 00:23:34,350 这些meta标签。 513 00:23:34,350 --> 00:23:38,000 你可以看到这个OG,不 要进入这件事情。 514 00:23:38,000 --> 00:23:42,110 但我几乎可以肯定在那 这些将是Facebook的。 515 00:23:42,110 --> 00:23:42,900 >> 这实际上是Facebook的。 516 00:23:42,900 --> 00:23:44,870 我认为,代表开放的图形。 517 00:23:44,870 --> 00:23:48,930 所以请记住,我提的有 功能NEW特定的元数据就可以 518 00:23:48,930 --> 00:23:49,800 给到一个页面。 519 00:23:49,800 --> 00:23:51,150 那什么是正确的位置。 520 00:23:51,150 --> 00:23:54,580 >> 所以,当你在Facebook上链接此页面, 图像它会显示 521 00:23:54,580 --> 00:23:56,630 这是图像就在这里。 522 00:23:56,630 --> 00:23:58,310 而你实际看到它的 Facebook的,因为它是 523 00:23:58,310 --> 00:23:59,470 Facebook的形象。 524 00:23:59,470 --> 00:24:00,880 >> 但无论如何,我们正在一边。 525 00:24:00,880 --> 00:24:03,220 因此,我们有一些元数据标签在这里。 526 00:24:03,220 --> 00:24:05,570 我们看到CS50称号。 527 00:24:05,570 --> 00:24:09,830 再次,标题是善有善报 在这里在浏览器选项卡。 528 00:24:09,830 --> 00:24:14,770 我们看到这个链接是在,就在这里, 外部JavaScript文件。 529 00:24:14,770 --> 00:24:17,640 >> 我们还没有谈到JavaScript的多, 但下周 - 当然,如果 530 00:24:17,640 --> 00:24:20,350 你在做一个基于Web的问题集, 您将使用JavaScript。 531 00:24:20,350 --> 00:24:23,540 这是您在外部链接如何 JavaScript文件。 532 00:24:23,540 --> 00:24:31,970 我们看到这里,终于,在CSS 样式表,即这些文档 533 00:24:31,970 --> 00:24:32,830 风格的这份代码。 534 00:24:32,830 --> 00:24:37,190 >> 让我们真正打开和 看看真的很快。 535 00:24:37,190 --> 00:24:38,440 这看起来疯狂。 536 00:24:38,440 --> 00:24:40,840 537 00:24:40,840 --> 00:24:42,790 有没有办法,我会 能通读。 538 00:24:42,790 --> 00:24:46,930 所以,你实际上可以不过,如果你拿 一起来看看,你可以排序的看到, 539 00:24:46,930 --> 00:24:48,650 有 - 540 00:24:48,650 --> 00:24:49,790 我们走吧。 541 00:24:49,790 --> 00:24:53,440 >> 这看上去就像我们所看到的 之前,背景颜色,将其设置 542 00:24:53,440 --> 00:24:55,550 等于一些红绿蓝值。 543 00:24:55,550 --> 00:24:59,070 排序这东西不应该似乎 国外,即使当介绍 544 00:24:59,070 --> 00:25:00,850 这样,它可以是 有点势不可挡。 545 00:25:00,850 --> 00:25:03,340 我们不是要看看这个CSS文件 或花很多时间在上面,因为 546 00:25:03,340 --> 00:25:06,030 它是,再次,非常难以阅读。 547 00:25:06,030 --> 00:25:09,090 >> 让我们回到这 HTML页面为CS50。 548 00:25:09,090 --> 00:25:10,930 并让我们向下滚动到身体。 549 00:25:10,930 --> 00:25:14,730 而且里面我们看到这个div标签。 550 00:25:14,730 --> 00:25:18,370 我们看到了一个头就在这里。 551 00:25:18,370 --> 00:25:21,060 我们看到的锚标记。 552 00:25:21,060 --> 00:25:26,050 >> 而这个列表元素是 给定一个特定的类。 553 00:25:26,050 --> 00:25:28,370 而且我们看到,重复类 一遍又一遍。 554 00:25:28,370 --> 00:25:29,730 有你柯蒂斯。 555 00:25:29,730 --> 00:25:32,730 有HTML5中的注释。 556 00:25:32,730 --> 00:25:36,280 >> 正如你看到的,我们仍然可以看到 它,但它没有显示出来。 557 00:25:36,280 --> 00:25:37,960 它实际上是非常有趣的。 558 00:25:37,960 --> 00:25:40,760 这看起来是这样的成绩列表 元素被注释掉。 559 00:25:40,760 --> 00:25:45,110 如果我们去到这个页面,再次,它仍然 在那里出现,那么有趣。 560 00:25:45,110 --> 00:25:47,830 >> 哦,那是为什么呢,因为 这下一行。 561 00:25:47,830 --> 00:25:50,680 562 00:25:50,680 --> 00:25:52,735 还有什么,我们看到的兴趣呢? 563 00:25:52,735 --> 00:25:56,640 564 00:25:56,640 --> 00:26:00,180 这样做的其余部分较为混乱,在 处理这种权利的一半 565 00:26:00,180 --> 00:26:03,280 网站,这是一个小 更复杂一点。 566 00:26:03,280 --> 00:26:08,890 >> 因此,这是一些HTML 是要看起来像。 567 00:26:08,890 --> 00:26:10,990 对于我来说,虽然,这是一个小 压倒性的,这不 568 00:26:10,990 --> 00:26:12,350 帮我那么多。 569 00:26:12,350 --> 00:26:16,560 然而,有一些 确实,其实帮了我很多。 570 00:26:16,560 --> 00:26:20,490 >> 这就是我用什么,每当我 试图找出某物 571 00:26:20,490 --> 00:26:24,270 看起来它的方式,或如何能 我改动了我的网站。 572 00:26:24,270 --> 00:26:29,280 那是一个开发工具 内置于Chrome浏览器。 573 00:26:29,280 --> 00:26:33,960 所以,如果你去这三条杠权利 这里再往工具点击 574 00:26:33,960 --> 00:26:40,120 开发工具,一个小窗口会 弹出在页面的底部。 575 00:26:40,120 --> 00:26:46,910 尤其,铬,因为它是 精彩,将格式化这个窗口, 576 00:26:46,910 --> 00:26:49,580 采取的HTML,使它看起来 很多关于你更好。 577 00:26:49,580 --> 00:26:54,860 所以,现在它实际上是一些可折叠 的HTML,你可以探索检查 578 00:26:54,860 --> 00:26:56,620 页面的元素。 579 00:26:56,620 --> 00:26:59,400 >> 如果我们想看看身体, 它实际上凸显。 580 00:26:59,400 --> 00:27:03,240 当你翻阅过的HTML的一部分, 倒在这个窗口中,它会 581 00:27:03,240 --> 00:27:06,530 突出的部分它在说话 关于在大窗口。 582 00:27:06,530 --> 00:27:10,800 因此,让我再试一次,并 吹这一点。 583 00:27:10,800 --> 00:27:12,170 确定。 584 00:27:12,170 --> 00:27:13,550 >> 因此,让我们打开身体。 585 00:27:13,550 --> 00:27:17,280 而且我在滚动这个左格。 586 00:27:17,280 --> 00:27:21,420 而且你注意到它的突出 这左半个屏幕。 587 00:27:21,420 --> 00:27:25,710 因此,让我们点击该 并展开。 588 00:27:25,710 --> 00:27:27,280 >> 里面的它,它看起来像 有两个div。 589 00:27:27,280 --> 00:27:29,790 还有这个第一个div。 590 00:27:29,790 --> 00:27:30,760 我没有看到高亮显示。 591 00:27:30,760 --> 00:27:35,900 我不知道,但它看起来像这样 第二个,左内,是内容 592 00:27:35,900 --> 00:27:37,700 在屏幕的左侧。 593 00:27:37,700 --> 00:27:39,360 >> 再有就是这个东西叫做头。 594 00:27:39,360 --> 00:27:41,890 它看起来像是一个突出 在CS50的一部分。 595 00:27:41,890 --> 00:27:46,600 如果我们打开了,我们看到它的 无非就是头1。 596 00:27:46,600 --> 00:27:51,140 它给了一个ID,它的 给定的文本CS50。 597 00:27:51,140 --> 00:27:57,240 >> 所以,再一次,看着它通过这个 控制台或者使用开发者工具 598 00:27:57,240 --> 00:28:00,710 窗格的屏幕使得底部 探索这个网站,希望一 599 00:28:00,710 --> 00:28:02,990 少了很多恐吓和 很多更方便。 600 00:28:02,990 --> 00:28:06,360 这也让我们认识到, 本网站,虽然它看起来很 601 00:28:06,360 --> 00:28:09,210 漂亮,漂亮,是不是所有的东西 超过你将成为怎样的 602 00:28:09,210 --> 00:28:10,430 这样做的习题集7。 603 00:28:10,430 --> 00:28:13,080 而这完全是内 你的能力去创造。 604 00:28:13,080 --> 00:28:14,110 >> 如果我们要 - 605 00:28:14,110 --> 00:28:18,270 有关使用这些其他很酷的事情 工具,如果你右键点击 606 00:28:18,270 --> 00:28:22,270 标题,您可以编辑HTML。 607 00:28:22,270 --> 00:28:25,660 所以,让我们把它叫做杰森。 608 00:28:25,660 --> 00:28:28,990 现在你会发现我已经改变 此页面上的HTML。 609 00:28:28,990 --> 00:28:31,020 >> 当然,我并没有改变 它永久。 610 00:28:31,020 --> 00:28:34,570 如果我刷新我的浏览器,那么它会 回到原始的HTML。 611 00:28:34,570 --> 00:28:38,860 但有时我想调试我的代码, 我不想看只是有我 612 00:28:38,860 --> 00:28:41,370 gedit的窗口,并尝试理解 这是怎么回事。 613 00:28:41,370 --> 00:28:42,705 >> 我想看看会现场发生什么。 614 00:28:42,705 --> 00:28:45,880 所以,我将修改这样的代码,并得到 但我想要的方式来看待。 615 00:28:45,880 --> 00:28:47,960 然后我会做 变化在我的代码。 616 00:28:47,960 --> 00:28:50,010 >> 而且我发现它是一个更容易 当你可以做的事情 617 00:28:50,010 --> 00:28:52,400 瞬间,像这样。 618 00:28:52,400 --> 00:28:58,410 比方说,再次,我们要再拍 偶然的机会,因为我们正在探索与 619 00:28:58,410 --> 00:29:00,340 HTML和CSS现在。 620 00:29:00,340 --> 00:29:02,600 我可以编辑HTML现在。 621 00:29:02,600 --> 00:29:06,680 我要去包含一个链接。 622 00:29:06,680 --> 00:29:10,650 >> 所以我要改变CS50的家 页,所以它会链接到 - 623 00:29:10,650 --> 00:29:12,060 让我们说 - 我的主页。 624 00:29:12,060 --> 00:29:16,700 叫什么名字,如果有人回忆说,或 什么是我想给属性 625 00:29:16,700 --> 00:29:18,850 当我想要一个锚标签 它链接到别的地方? 626 00:29:18,850 --> 00:29:19,562 >> 观众: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 所以,现在,你会看到有 贾森是根据下划线。 630 00:29:35,750 --> 00:29:40,170 这是因为Chrome浏览器,默认情况下, 给出了锚下划线。 631 00:29:40,170 --> 00:29:41,990 你可能已经看到过 当你去一个网页。 632 00:29:41,990 --> 00:29:44,200 东西都是链接 下划线和蓝色。 633 00:29:44,200 --> 00:29:47,300 对于一个链接的默认样式 是一般强调 634 00:29:47,300 --> 00:29:48,830 并把它放在蓝色。 635 00:29:48,830 --> 00:29:50,050 >> 如果我不喜欢这样, 我可以改变这一点。 636 00:29:50,050 --> 00:29:51,220 我们将在第二个改变它。 637 00:29:51,220 --> 00:29:54,660 但现在,还注意到,如果我徘徊 在此,在左下方的 638 00:29:54,660 --> 00:29:58,580 屏幕正上方的字元素 是,我给它的链接。 639 00:29:58,580 --> 00:30:03,080 >> 所以,如果我没有点击这个 - 我们可以 右键点击这个,打开一个新标签。 640 00:30:03,080 --> 00:30:04,520 这其实不是我的主页。 641 00:30:04,520 --> 00:30:06,700 这只是我的名字。 642 00:30:06,700 --> 00:30:07,210 你去那里。 643 00:30:07,210 --> 00:30:10,440 现在,我们已经把它变成一个链接。 644 00:30:10,440 --> 00:30:13,220 >> 让我们来探讨一些CSS以及。 645 00:30:13,220 --> 00:30:15,680 美丽的事物 - 而且我要去 使这个稍微小了一点 - 约 646 00:30:15,680 --> 00:30:19,480 这个控制台是,那个疯狂的CSS表 我们看到之前,这是真的 647 00:30:19,480 --> 00:30:24,130 很难解析,现在是美丽的 奠定了我们在左手边 648 00:30:24,130 --> 00:30:25,270 此窗格。 649 00:30:25,270 --> 00:30:27,230 所以我们可以看一下。 650 00:30:27,230 --> 00:30:33,690 如果我们扩展这个风格标签,我们 可以看到所有的不同风格 651 00:30:33,690 --> 00:30:37,940 一种是与相关联的,在这种情况下, 这个特殊的元素,这 652 00:30:37,940 --> 00:30:39,700 链接元素。 653 00:30:39,700 --> 00:30:44,240 >> 如果我们这样做的复合样式选项卡,即 只是告诉我们,不是这里的一切 654 00:30:44,240 --> 00:30:47,450 从何而来,但基本上所有的这些 这是经营上的风格 655 00:30:47,450 --> 00:30:51,220 这个特殊的元素现在。 656 00:30:51,220 --> 00:30:55,050 让我们说,我们要 改变它一下。 657 00:30:55,050 --> 00:30:58,870 658 00:30:58,870 --> 00:31:02,740 因此,这是所有的样式 操作这个特殊的元素。 659 00:31:02,740 --> 00:31:04,800 说,我们要改变它,因为我们 想怎么看东西的样子。 660 00:31:04,800 --> 00:31:06,050 而我们只是在玩 各地现在。 661 00:31:06,050 --> 00:31:08,720 或者我们要测试的东西出来,才 写它的代码和推 662 00:31:08,720 --> 00:31:10,150 它并使其生活。 663 00:31:10,150 --> 00:31:11,780 >> 我们可以去的风格标签。 664 00:31:11,780 --> 00:31:14,270 并在第一个框中它 说,element.style。 665 00:31:14,270 --> 00:31:17,020 而在这里,你可以插入, 你可以添加一些东西。 666 00:31:17,020 --> 00:31:18,550 >> 所以我想 - 667 00:31:18,550 --> 00:31:22,360 让我们去我的链接和 设置背景色。 668 00:31:22,360 --> 00:31:25,830 它实际上自动填充它适合你, 所有可能的属性。 669 00:31:25,830 --> 00:31:29,360 背景颜色,我想 作出这样的蓝色。 670 00:31:29,360 --> 00:31:31,520 BLUS是不是一个词。 671 00:31:31,520 --> 00:31:32,400 蓝色是一个字。 672 00:31:32,400 --> 00:31:34,490 >> 难道我看它上来? 673 00:31:34,490 --> 00:31:35,800 哦,原来是因为它是在href? 674 00:31:35,800 --> 00:31:36,550 确定。 675 00:31:36,550 --> 00:31:40,220 因此,我看不出这里有什么变化。 676 00:31:40,220 --> 00:31:45,100 那是因为,如果我们突出 链接时,你会发现链接 677 00:31:45,100 --> 00:31:48,430 实际上并没有控制所述 这个特定元素的属性。 678 00:31:48,430 --> 00:31:52,430 它实际上,如果我们打开链接, 这个头就在这里这就是 679 00:31:52,430 --> 00:31:53,590 控制是什么样子。 680 00:31:53,590 --> 00:31:56,380 >> 所以,如果我想使背景 蓝色的,我其实有改变 681 00:31:56,380 --> 00:31:59,640 的背景颜色 头元素。 682 00:31:59,640 --> 00:32:02,700 现在我们看到, 背景是蓝色的。 683 00:32:02,700 --> 00:32:06,770 >> 如此反复,这很快可能会去 通过这种材料很快。 684 00:32:06,770 --> 00:32:08,580 但是,这基本上是什么 你会做的事情。 685 00:32:08,580 --> 00:32:10,860 这不是在习题集7, 但是当你肯定 686 00:32:10,860 --> 00:32:12,080 编码在网络上。 687 00:32:12,080 --> 00:32:12,360 >> 确定。 688 00:32:12,360 --> 00:32:13,780 我想使背景的蓝色。 689 00:32:13,780 --> 00:32:16,180 即使在这种情况下, 蓝色看起来很丑陋。 690 00:32:16,180 --> 00:32:17,740 我可以去这里玩。 691 00:32:17,740 --> 00:32:20,515 我看到它变为蓝色 不会在一个工作。 692 00:32:20,515 --> 00:32:26,710 我必须真正改变标题 元件包括蓝色 693 00:32:26,710 --> 00:32:28,200 背景。 694 00:32:28,200 --> 00:32:34,450 >> 然后,如果当时我回到我的CSS 文件,实际上,我怎么设定这个 695 00:32:34,450 --> 00:32:37,520 背景是蓝色和 进行此更改棒? 696 00:32:37,520 --> 00:32:44,840 因为如果我们注意到,如果我刷新 页面,所有我所做的更改都不见了。 697 00:32:44,840 --> 00:32:47,220 于是我意识到,好吧,我 背景是蓝色的。 698 00:32:47,220 --> 00:32:51,260 >> 我需要进入那个header1的元素 并改变背景颜色为蓝色。 699 00:32:51,260 --> 00:32:52,710 我怎么居然作出这样的改变? 700 00:32:52,710 --> 00:32:57,040 嗯,记得,如果我们进去吧 在这里,这个头球攻门, 701 00:32:57,040 --> 00:32:59,280 标题都有一个ID。 702 00:32:59,280 --> 00:33:00,890 这就是冠军。 703 00:33:00,890 --> 00:33:09,010 >> 所以在我们的CSS文件,我们可以说,OK, 采取任何带有标题的ID和 704 00:33:09,010 --> 00:33:11,330 给它这个额外的属性。 705 00:33:11,330 --> 00:33:18,010 我们该如​​何引用一些与 标题,任何想法,或任何人的ID 706 00:33:18,010 --> 00:33:24,406 知道我们如何引用 在我们的CSS文件的ID? 707 00:33:24,406 --> 00:33:26,290 >> 哈希,这是完全正确的。 708 00:33:26,290 --> 00:33:28,710 而你得到了一个暗示就在这里。 709 00:33:28,710 --> 00:33:32,810 所以,在某个地方这个CSS文件, 还有下面这行代码 - 710 00:33:32,810 --> 00:33:34,150 ##左左内侧##标题标题。 711 00:33:34,150 --> 00:33:36,810 712 00:33:36,810 --> 00:33:40,590 和它给它缘底部, 定义这个边缘底部 713 00:33:40,590 --> 00:33:42,220 特定元素。 714 00:33:42,220 --> 00:33:46,580 >> 好吧,如果我想改变这种状况, 我会去到这个CSS文件。 715 00:33:46,580 --> 00:33:49,510 我既可以找到这个 CSS文件的一部分。 716 00:33:49,510 --> 00:33:50,300 或者,我可以写我自己。 717 00:33:50,300 --> 00:33:54,670 >> 我可以做散列标题大括号和 然后背景颜色蓝色结肠癌 718 00:33:54,670 --> 00:33:57,250 分号和关闭的大括号。 719 00:33:57,250 --> 00:34:02,790 而这将改变背景 色彩这个元素,以蓝色的。 720 00:34:02,790 --> 00:34:06,690 他们给你这么多在这里的原因是 即,有必要在这种情况下, 721 00:34:06,690 --> 00:34:08,690 因为标题是一个唯一的ID。 722 00:34:08,690 --> 00:34:11,190 >> 但你可以做的是鸟巢的东西。 723 00:34:11,190 --> 00:34:14,760 因此,这是说,好了,去左边。 724 00:34:14,760 --> 00:34:15,350 这是非常小的。 725 00:34:15,350 --> 00:34:16,150 我对此表示道歉。 726 00:34:16,150 --> 00:34:17,750 >> 但去的东西ID为左。 727 00:34:17,750 --> 00:34:20,420 里面的那个,寻找 ID为遗忘物内。 728 00:34:20,420 --> 00:34:22,630 里面的那个样子,找 东西用ID头。 729 00:34:22,630 --> 00:34:27,560 里面的那个,认准的事情 编号标题和更改ID称号。 730 00:34:27,560 --> 00:34:29,120 所以这只是一种方式 嵌套的东西。 731 00:34:29,120 --> 00:34:32,719 有些人喜欢窝,因为 这使得它更清楚一点。 732 00:34:32,719 --> 00:34:37,980 >> 你会看到这儿还,右 在这里,没有散。 733 00:34:37,980 --> 00:34:39,449 这只是H1。 734 00:34:39,449 --> 00:34:44,060 这是因为,H1中给出的 一个通用的标记名称。 735 00:34:44,060 --> 00:34:48,080 并有一些CSS属性 与每一个H1相关。 736 00:34:48,080 --> 00:34:51,889 所以,如果我发现了另一个H1此页面上, 我也看到,这种风格是 737 00:34:51,889 --> 00:34:54,280 适用于它。 738 00:34:54,280 --> 00:34:59,290 >> 如果我想要一个样式应用到一个类, 我怎么引用类或 739 00:34:59,290 --> 00:35:02,469 谈一类在一个CSS文件? 740 00:35:02,469 --> 00:35:03,315 >> 观众:点。 741 00:35:03,315 --> 00:35:05,340 >> JASON HIRSCHHORN:这是一个点。 742 00:35:05,340 --> 00:35:08,630 因此,让我们回到这个页面之前。 743 00:35:08,630 --> 00:35:11,160 如果我做杂凑的ID。 744 00:35:11,160 --> 00:35:14,760 这是改变风格 与ID的东西。 745 00:35:14,760 --> 00:35:21,390 或者,对不起,如果我做散列的标志,这是 寻找的东西与标识的ID 746 00:35:21,390 --> 00:35:24,010 并给它一个特定的CSS样式。 747 00:35:24,010 --> 00:35:28,280 >> 如果我做一些事情。顶部,这是发现 一切都与类顶部和 748 00:35:28,280 --> 00:35:30,190 改变它的样式。 749 00:35:30,190 --> 00:35:35,950 如果我只是H1,即认为每个 单h1和给它的任何 750 00:35:35,950 --> 00:35:37,940 风格我想给它。 751 00:35:37,940 --> 00:35:43,260 如果我做H1空间,然后。顶部。 752 00:35:43,260 --> 00:35:47,670 这会发现所有的H1S,然后 所有与类顶级的那些和 753 00:35:47,670 --> 00:35:51,690 那么只有改变这些样式 无论我想给它。 754 00:35:51,690 --> 00:35:54,600 >> 再次,我们可以写 一些这方面我们自己。 755 00:35:54,600 --> 00:35:55,790 但是,我们也不会得到那么远。 756 00:35:55,790 --> 00:35:59,180 好多了,看来真正去 上一个活生生的网站,看看如何 757 00:35:59,180 --> 00:36:02,800 他们这样做,并期待在所有的 你做奇妙的事情。 758 00:36:02,800 --> 00:36:06,570 >> 让我们再看一个网站 在我们继续之前。 759 00:36:06,570 --> 00:36:10,150 这是一个你可能会 熟悉。 760 00:36:10,150 --> 00:36:12,310 这是CS50融资。 761 00:36:12,310 --> 00:36:16,120 所以,再一次,你其实可以进去 观察这个CSS文件的 762 00:36:16,120 --> 00:36:19,390 电脑,因为你已经下载了这个 CSS文件,如果你下载了 763 00:36:19,390 --> 00:36:20,270 问题集。 764 00:36:20,270 --> 00:36:26,850 >> 我们可以去工具和 开发者工具。 765 00:36:26,850 --> 00:36:30,280 我们看到一个更简单的HTML布局。 766 00:36:30,280 --> 00:36:32,020 我们有顶部,中间和底部。 767 00:36:32,020 --> 00:36:34,490 再次,你应该是 熟悉了,因为你已经了解了 768 00:36:34,490 --> 00:36:37,680 通过分配代码 本周的问题集。 769 00:36:37,680 --> 00:36:43,360 >> 在顶部是,每个代码, 单个图像调用。 770 00:36:43,360 --> 00:36:47,170 那就是在图像的源。 771 00:36:47,170 --> 00:36:52,170 说我已经完成了所有的东西 我想对于习题集7。 772 00:36:52,170 --> 00:36:55,500 和它的正常工作,但 我想改变它的外观。 773 00:36:55,500 --> 00:36:58,900 我想改变背景 该页面的顶部, 774 00:36:58,900 --> 00:37:01,000 例如,蓝色。 775 00:37:01,000 --> 00:37:04,860 如果是我,我会来的 这里弄清楚,确定什么 776 00:37:04,860 --> 00:37:05,890 我想改变。 777 00:37:05,890 --> 00:37:08,700 >> 让我们来看看,DIV ID之上,那长相 像的页面的顶部。 778 00:37:08,700 --> 00:37:09,910 因此,让我们去那里。 779 00:37:09,910 --> 00:37:13,940 让我们尝试改变 背景颜色。 780 00:37:13,940 --> 00:37:16,360 让我们做的爱丽丝蓝色,因为 这是一个更好的。 781 00:37:16,360 --> 00:37:18,010 >> 而且你会发现 - 782 00:37:18,010 --> 00:37:19,190 你可能无法看到。 783 00:37:19,190 --> 00:37:23,430 但是有一个淡蓝色的, 旁边的CS50的标志。 784 00:37:23,430 --> 00:37:25,810 让我们,而不是将其更改为红色。 785 00:37:25,810 --> 00:37:28,790 ,你会发现现在我只是改变了 背景颜色为红色。 786 00:37:28,790 --> 00:37:37,050 >> 所以,现在我将进入我的CSS文件, 键入#顶花括号就在这里。 787 00:37:37,050 --> 00:37:42,170 你可以看到代码的权利 在这里,大括号。 788 00:37:42,170 --> 00:37:44,530 然后,我想补充的背景 色,红色。 789 00:37:44,530 --> 00:37:47,500 然后,就 是一个大括号。 790 00:37:47,500 --> 00:37:52,230 所以这是我会怎样探索和 试验在CS50格式化 791 00:37:52,230 --> 00:37:53,070 财经网站。 792 00:37:53,070 --> 00:37:55,060 >> 我可以在这儿试做 它在我的浏览器。 793 00:37:55,060 --> 00:37:58,130 然后,我可以进入我的实际代码 并进行了变化,将 794 00:37:58,130 --> 00:38:01,940 实际去住的,人们 实际看到的,如果他们要来 795 00:38:01,940 --> 00:38:04,280 我的具体部位。 796 00:38:04,280 --> 00:38:05,390 >> 确定。 797 00:38:05,390 --> 00:38:06,850 这是一个很多。 798 00:38:06,850 --> 00:38:09,380 我的经历道歉 它如此之快。 799 00:38:09,380 --> 00:38:12,560 没有任何人有任何疑问, 在所有的HTML或CSS? 800 00:38:12,560 --> 00:38:15,830 801 00:38:15,830 --> 00:38:24,728 >> 观众:你可以去超过你如何 挂了后来杰森,再次? 802 00:38:24,728 --> 00:38:26,180 >> JASON HIRSCHHORN:什么 你的意思是联系在一起? 803 00:38:26,180 --> 00:38:29,765 >> 观众:你提供一个链接到另一个 网站,使用锚。 804 00:38:29,765 --> 00:38:32,980 >> JASON HIRSCHHORN:所以你问, 只是笼统,你如何做一个链接? 805 00:38:32,980 --> 00:38:33,560 >> 观众:是啊。 806 00:38:33,560 --> 00:38:34,150 >> JASON HIRSCHHORN:确定。 807 00:38:34,150 --> 00:38:35,575 该代码制作一个链接 - 808 00:38:35,575 --> 00:38:38,180 809 00:38:38,180 --> 00:38:40,590 >> 观众:没有,像在HTML中。 810 00:38:40,590 --> 00:38:43,140 >> JASON HIRSCHHORN:羽绒服在这里,你的意思是? 811 00:38:43,140 --> 00:38:46,960 所以,如果我想包括一个链接 某处,说,这是对我的HTML 812 00:38:46,960 --> 00:38:50,210 页面在这里。 813 00:38:50,210 --> 00:38:51,010 这是HTML。 814 00:38:51,010 --> 00:38:53,720 也许这是在打开一个文件,index.html的。 815 00:38:53,720 --> 00:38:56,100 我进去了。 816 00:38:56,100 --> 00:38:58,990 >> 让我们有这个版权约翰 哈佛链接到一些东西。 817 00:38:58,990 --> 00:39:02,230 因此,我们将编辑这一切都为HTML。 818 00:39:02,230 --> 00:39:08,480 你要做的就是包括一个,所以 支架上的接近支架在 819 00:39:08,480 --> 00:39:12,700 开始,然后支架斜线 在最后一个右括号。 820 00:39:12,700 --> 00:39:13,930 >> 所以,现在我已经包括了一个锚标记。 821 00:39:13,930 --> 00:39:15,475 而实际上,如果你点击 出这一点,现在将 822 00:39:15,475 --> 00:39:22,110 格式化编辑为HTML。 823 00:39:22,110 --> 00:39:24,020 并说,我们要联系起来。 824 00:39:24,020 --> 00:39:25,760 我们倒是你href属性。 825 00:39:25,760 --> 00:39:27,010 和我们说 - 826 00:39:27,010 --> 00:39:42,600 827 00:39:42,600 --> 00:39:47,600 >> 现在,当你注意到,版权 约翰·哈佛是蓝色的。 828 00:39:47,600 --> 00:39:50,870 当我翻阅过 它,它现在是一个链接。 829 00:39:50,870 --> 00:39:53,140 所以,你可以编写代码。 830 00:39:53,140 --> 00:39:57,030 你可以环绕几乎任何东西 你想在一个锚标记,并把它 831 00:39:57,030 --> 00:39:57,700 成一个链接。 832 00:39:57,700 --> 00:39:58,246 >> 观众:确定。 833 00:39:58,246 --> 00:39:58,520 得到了它。 834 00:39:58,520 --> 00:40:01,300 >> JASON HIRSCHHORN:如果我不想 它 - 当然,有时人们往往 835 00:40:01,300 --> 00:40:04,090 想到这些事情,只是看 蓝色笼统,并强调是 836 00:40:04,090 --> 00:40:05,860 不要做一个链接最漂亮的方式。 837 00:40:05,860 --> 00:40:11,380 所以,如果我来这里,您可以看到, 某处在CSS文件中,有 838 00:40:11,380 --> 00:40:14,500 写了这一个,然后 两个花括号。 839 00:40:14,500 --> 00:40:20,700 所以我们可以说,对于链接,我不 希望他们变成蓝色,而我 840 00:40:20,700 --> 00:40:23,645 要链接到的颜色 是这个漂亮的紫红色。 841 00:40:23,645 --> 00:40:28,320 842 00:40:28,320 --> 00:40:30,640 >> 让我们给它的颜色。 843 00:40:30,640 --> 00:40:34,060 844 00:40:34,060 --> 00:40:35,110 让我们挑洋红色。 845 00:40:35,110 --> 00:40:38,440 现在,在我的页面上的所有链接有 成为品红这个漂亮的颜色。 846 00:40:38,440 --> 00:40:40,170 有些人不喜欢的颜色的。 847 00:40:40,170 --> 00:40:41,340 有些人不喜欢下划线。 848 00:40:41,340 --> 00:40:42,510 你来挑。 849 00:40:42,510 --> 00:40:44,990 >> 的链接,您可以风格如何 看一次您访问过他们。 850 00:40:44,990 --> 00:40:47,820 正如你会发现在很多的网页, 链接变成紫色在您访问它们。 851 00:40:47,820 --> 00:40:49,190 您可以更改颜色为好。 852 00:40:49,190 --> 00:40:49,450 是啊。 853 00:40:49,450 --> 00:40:51,790 >> 观众:所以你改变它 对于每一个环节。 854 00:40:51,790 --> 00:40:56,310 但如果你只是想这样做链接 本身,你只是做在ID 855 00:40:56,310 --> 00:40:58,720 底部或东西吗? 856 00:40:58,720 --> 00:41:01,070 >> JASON HIRSCHHORN:那么大的问题。 857 00:41:01,070 --> 00:41:05,090 正如你看到这里,我改变了一些 适用于该CSS的一部分 858 00:41:05,090 --> 00:41:11,530 一切是一个A.如果我想 只是做了链接在底部,我 859 00:41:11,530 --> 00:41:14,500 会去我的CSS文件,并可能 做,就像你说的,散列 860 00:41:14,500 --> 00:41:16,040 底部空间。 861 00:41:16,040 --> 00:41:18,400 而这会给我 一切正如在底部。 862 00:41:18,400 --> 00:41:30,720 >> 或者我可以,或者,给它一个 唯一的ID,然后就做哈希连接。 863 00:41:30,720 --> 00:41:32,050 并且,让我 改变了这一点。 864 00:41:32,050 --> 00:41:36,170 然而,仅仅少量发放的ID不管三七二十一 通常是一个坏 865 00:41:36,170 --> 00:41:37,730 实践中,由于这些 应该是唯一的。 866 00:41:37,730 --> 00:41:40,940 而你越有那些,它 可以得到一个有点混乱。 867 00:41:40,940 --> 00:41:41,270 是啊。 868 00:41:41,270 --> 00:41:43,725 >> 观众:你能不能给同 ID为多个业主? 869 00:41:43,725 --> 00:41:45,820 >> JASON HIRSCHHORN:从技术上讲,是的。 870 00:41:45,820 --> 00:41:50,700 什么也没有去阻止你,但你 不要你应该给它一个类。 871 00:41:50,700 --> 00:41:55,330 872 00:41:55,330 --> 00:41:57,655 好了,其他问题 关于HTML或CSS? 873 00:41:57,655 --> 00:42:05,660 874 00:42:05,660 --> 00:42:06,310 >> 确定。 875 00:42:06,310 --> 00:42:09,950 让我们继续前进到PHP。 876 00:42:09,950 --> 00:42:10,575 哦,是的。 877 00:42:10,575 --> 00:42:13,800 >> 观众:这是什么关于这些 网站,这意味着我们可以编辑 878 00:42:13,800 --> 00:42:15,440 他们才刷新。 879 00:42:15,440 --> 00:42:18,270 但是,一旦我们刷新它恢复 回到初始的HTML? 880 00:42:18,270 --> 00:42:19,900 >> JASON HIRSCHHORN:大问题 - 881 00:42:19,900 --> 00:42:24,810 所以当我们加载了这个 网页,它是HTML。 882 00:42:24,810 --> 00:42:25,900 和它的的JavaScript。 883 00:42:25,900 --> 00:42:29,060 它的PHP执行给我们什么 类型的网站,我们看到的。 884 00:42:29,060 --> 00:42:33,130 和它的创建一些HTML,一些 JavaScript和一些CSS。 885 00:42:33,130 --> 00:42:35,990 那就是现在访问 通过我们的计算机。 886 00:42:35,990 --> 00:42:40,700 >> 而这些文件的副本被保存 当地对我们的电脑, 887 00:42:40,700 --> 00:42:41,910 暂时。 888 00:42:41,910 --> 00:42:44,030 因此,我们可以编辑本地副本。 889 00:42:44,030 --> 00:42:46,530 但当然,我们不是在编辑 服务器副本。 890 00:42:46,530 --> 00:42:49,420 >> 而当我们刷新页面, 我们得到另一台服务器副本。 891 00:42:49,420 --> 00:42:51,250 因此,我们看到的东西 回到原来的。 892 00:42:51,250 --> 00:42:55,200 如果我们能够从这里,编辑 官方网站上,我们就会有很多 893 00:42:55,200 --> 00:42:55,800 的问题。 894 00:42:55,800 --> 00:42:58,670 >> 观众:是的,所以我们可以看 写该副本。 895 00:42:58,670 --> 00:43:00,140 >> JASON HIRSCHHORN:对。 896 00:43:00,140 --> 00:43:04,380 我们只是做局部的变化在这里, 但同样,探索非常有帮助, 897 00:43:04,380 --> 00:43:05,690 通常情况下。 898 00:43:05,690 --> 00:43:08,900 当我在写我的最后的项目,为 例如,我想看看一些 899 00:43:08,900 --> 00:43:11,270 网站上的东西看看 途中他们做到了。 900 00:43:11,270 --> 00:43:17,350 我会去,并使用此窗格下来 在这里,看看他们给了什么是CSS 901 00:43:17,350 --> 00:43:20,890 它或它们挑什么颜色或如何 得到它,这样,当你徘徊 902 00:43:20,890 --> 00:43:24,180 过东西,名单下来 在一个不错的级联方式。 903 00:43:24,180 --> 00:43:27,220 这是一个伟大的方式来检查什么其他 网站做的,从他们借钱。 904 00:43:27,220 --> 00:43:30,590 905 00:43:30,590 --> 00:43:33,690 >> 让我们进入到PHP。 906 00:43:33,690 --> 00:43:38,560 PHP代表,在递归感, PHP超文本处理器。 907 00:43:38,560 --> 00:43:42,060 和PHP,它会做 是执行代码的服务器端。 908 00:43:42,060 --> 00:43:44,490 因此,我们永远不会看到PHP代码。 909 00:43:44,490 --> 00:43:47,210 >> 然而,它确实很好玩呢 HTML和往往会产生 910 00:43:47,210 --> 00:43:48,210 大量的HTML代码。 911 00:43:48,210 --> 00:43:52,570 但是当你将熟悉的问题 设置7,你的PHP代码将执行, 912 00:43:52,570 --> 00:43:56,200 生成一些HTML,而这正是 用户将最终看到。 913 00:43:56,200 --> 00:44:00,510 >> PHP是令人难以置信的类似C。 不过,也有一对夫妇的 914 00:44:00,510 --> 00:44:04,400 差异,这些差异 重要的是要注意的。 915 00:44:04,400 --> 00:44:09,420 一个区别是变量 在PHP中是松散类型。 916 00:44:09,420 --> 00:44:11,275 没有任何人有一种感觉, 是什么意思? 917 00:44:11,275 --> 00:44:14,245 >> 观众:没必要给自己投了。 918 00:44:14,245 --> 00:44:16,400 像没有必要在文字写的。 919 00:44:16,400 --> 00:44:19,070 >> JASON HIRSCHHORN:我不会用 铸字,但肯定的,无需声明 920 00:44:19,070 --> 00:44:20,930 一个类型为特定的变量中。 921 00:44:20,930 --> 00:44:22,300 而不是怎么做,我们声明一个变量? 922 00:44:22,300 --> 00:44:23,860 >> 观众:用一个美元符号。 923 00:44:23,860 --> 00:44:25,270 >> JASON HIRSCHHORN:使用一个美元符号。 924 00:44:25,270 --> 00:44:27,540 因此$ x是可变的。 925 00:44:27,540 --> 00:44:29,580 1美元是一个变量。 926 00:44:29,580 --> 00:44:31,910 $字符串是一个变量。 927 00:44:31,910 --> 00:44:36,280 >> 这些变量,X元可以 是一个整数。 928 00:44:36,280 --> 00:44:38,010 然后,它可以是一个字符串。 929 00:44:38,010 --> 00:44:39,420 然后,它可能是一个字符。 930 00:44:39,420 --> 00:44:40,790 这其实并不重要。 931 00:44:40,790 --> 00:44:46,360 >> 另外,关于PHP的很酷的事情是, 比方说,$ x是字符串之一。 932 00:44:46,360 --> 00:44:48,920 和$ y是字符之一。 933 00:44:48,920 --> 00:44:54,370 您可以添加$ x和$ y和它会 给你2,你所期望的东西。 934 00:44:54,370 --> 00:44:56,160 因此,有在PHP中操作。 935 00:44:56,160 --> 00:45:00,810 因为它是松散类型的变量, 一些隐式转换为你做 936 00:45:00,810 --> 00:45:02,330 以及一些操作。 937 00:45:02,330 --> 00:45:04,240 >> 你可以在做的事情操作 的不同类型。 938 00:45:04,240 --> 00:45:08,740 而在此之前,你经常会得到一个错误 C语言的说法,这不是类型 939 00:45:08,740 --> 00:45:09,610 这应该去这里。 940 00:45:09,610 --> 00:45:11,510 这种类型的唯一的东西可以去这里。 941 00:45:11,510 --> 00:45:14,900 你不会得到那个类型 错误的,一般来说,在PHP。 942 00:45:14,900 --> 00:45:17,420 所以这是一个很大的不同 - 我们如何处理变数。 943 00:45:17,420 --> 00:45:20,850 >> 第二个大的区别是, PHP代码解释。 944 00:45:20,850 --> 00:45:23,110 WHERES,C代码编译。 945 00:45:23,110 --> 00:45:23,910 那是什么意思? 946 00:45:23,910 --> 00:45:26,700 >> 那么,对于C代码,你就跑 它通过一个编译器。 947 00:45:26,700 --> 00:45:29,010 你生成的二进制文件。 948 00:45:29,010 --> 00:45:30,770 而且你跑了二进制文件。 949 00:45:30,770 --> 00:45:35,500 你之前把所有的错误护理 您生成的二进制文件。 950 00:45:35,500 --> 00:45:37,810 >> 当然,也有可能是 分割故障,当你跑了 951 00:45:37,810 --> 00:45:39,020 二进制文件。 952 00:45:39,020 --> 00:45:45,780 但它不喜欢你忘了,包括 printf的定义,或 953 00:45:45,780 --> 00:45:48,735 你没有使用一个变量,只是 创建一个浪费的变量。 954 00:45:48,735 --> 00:45:51,830 或者你没有定义 函数原型。 955 00:45:51,830 --> 00:45:53,590 >> 所有你编译之前发生。 956 00:45:53,590 --> 00:45:56,830 它给了你所有的错误或坏的 的东西,它认为可能会发生。 957 00:45:56,830 --> 00:45:59,900 然后,你有你的0和 你跑了1个文件。 958 00:45:59,900 --> 00:46:01,690 PHP代码并不喜欢的工作。 959 00:46:01,690 --> 00:46:03,750 >> 你会写你的PHP代码。 960 00:46:03,750 --> 00:46:05,820 然后,你要 保存它,大概。 961 00:46:05,820 --> 00:46:09,160 并至少在P-7集,你会 刷新您的网页浏览器, 962 00:46:09,160 --> 00:46:11,110 你会看到发生了什么。 963 00:46:11,110 --> 00:46:14,110 你会看到输出 那PHP代码。 964 00:46:14,110 --> 00:46:17,450 >> 您还可能看到,在顶部 您的页面,一个错误。 965 00:46:17,450 --> 00:46:19,960 因为你有一些 在你的PHP错误。 966 00:46:19,960 --> 00:46:22,390 您可能仍然会看到其余 网页正在寻找的罚款。 967 00:46:22,390 --> 00:46:25,130 但有一部分是错误的,并有 在那个地方出错。 968 00:46:25,130 --> 00:46:28,320 那是因为那部分 你的PHP代码不起作用。 969 00:46:28,320 --> 00:46:31,680 >> 事实上,当你执行,当你 去像by.php。 970 00:46:31,680 --> 00:46:34,950 它会通过你的PHP 一行行的文件并执行它 971 00:46:34,950 --> 00:46:36,210 然后才是。 972 00:46:36,210 --> 00:46:39,890 它不会编译它提前 时间或编译一个副本,然后给 973 00:46:39,890 --> 00:46:41,570 该编译副本给大家。 974 00:46:41,570 --> 00:46:43,830 每一次,它要经过 一行行并执行它。 975 00:46:43,830 --> 00:46:46,620 >> 因此,一些线路可能工作和 输出正确的东西。 976 00:46:46,620 --> 00:46:49,500 与其他线路可能被打破 并输出一个错误信息。 977 00:46:49,500 --> 00:46:52,650 综上所述,使用PHP调试时,我们已经给 你们几个有用的东西 978 00:46:52,650 --> 00:46:54,580 帮你调试,比如 转储功能。 979 00:46:54,580 --> 00:46:56,900 >> 但通常,你会 看到这些错误。 980 00:46:56,900 --> 00:46:58,340 这就是你如何去 知道你做错了什么。 981 00:46:58,340 --> 00:47:00,740 但你只会看到错误 一旦你真正运行的代码。 982 00:47:00,740 --> 00:47:03,420 983 00:47:03,420 --> 00:47:08,880 >> PHP的另一个重要方面和 Web开发是GET的想法 984 00:47:08,880 --> 00:47:09,920 与岗位。 985 00:47:09,920 --> 00:47:13,250 谁能解释一下什么区别 之间的GET和POST? 986 00:47:13,250 --> 00:47:17,530 987 00:47:17,530 --> 00:47:18,780 没有人 - 988 00:47:18,780 --> 00:47:21,710 989 00:47:21,710 --> 00:47:21,970 是。 990 00:47:21,970 --> 00:47:24,495 >> 观众:他们难道没有一 让用户看到的数据, 991 00:47:24,495 --> 00:47:26,080 其中一人不? 992 00:47:26,080 --> 00:47:27,310 >> JASON HIRSCHHORN:太好了。 993 00:47:27,310 --> 00:47:28,400 是啊,你有什么要补充的吗? 994 00:47:28,400 --> 00:47:32,622 >> 观众:我瘦职位是 超全局变量。 995 00:47:32,622 --> 00:47:34,740 >> JASON HIRSCHHORN:中那么这两个 变量是给你的。 996 00:47:34,740 --> 00:47:35,630 这些仅仅是变量。 997 00:47:35,630 --> 00:47:37,740 你知道他们是变量, 因为在这里我 998 00:47:37,740 --> 00:47:38,780 使用美元符号。 999 00:47:38,780 --> 00:47:41,950 >> 这些都是给定的变量 给你的PHP。 1000 00:47:41,950 --> 00:47:45,990 而当你的网页之间移动, 要保存一些信息。 1001 00:47:45,990 --> 00:47:47,960 你可能想保存,如果 该用户已登录。 1002 00:47:47,960 --> 00:47:49,270 这不是保存在GET和POST。 1003 00:47:49,270 --> 00:47:51,390 这是保存在别的东西, 一个不同的变量。 1004 00:47:51,390 --> 00:47:55,170 >> 任何人都知道这是什么的保存变量 中,或者你用什么变量 1005 00:47:55,170 --> 00:47:57,728 P-设为7,以确保 用户登录? 1006 00:47:57,728 --> 00:48:00,360 1007 00:48:00,360 --> 00:48:03,690 $ _SESSION,这是完全正确的, 也许重要的是熟悉 1008 00:48:03,690 --> 00:48:06,060 这些东西的名字 你经常使用。 1009 00:48:06,060 --> 00:48:10,070 >> 所以你使用会话变量来保存 从页面信息页面。 1010 00:48:10,070 --> 00:48:11,075 这是一个超级变数。 1011 00:48:11,075 --> 00:48:15,250 它的存在在每一页上,也许像 全局变量,如果你要考虑 1012 00:48:15,250 --> 00:48:16,900 它这样。 1013 00:48:16,900 --> 00:48:19,260 >> 有一对夫妇的其他变量 允许您传输的信息 1014 00:48:19,260 --> 00:48:20,710 从页面到页面。 1015 00:48:20,710 --> 00:48:24,260 尤其是,那些我们将重点放在 是GET和POST变量。 1016 00:48:24,260 --> 00:48:29,330 在PHP中,它们看起来像 $ _GET和$ _POST。 1017 00:48:29,330 --> 00:48:33,610 和区别,因为马库斯指出 出来,他们两个之间是, 1018 00:48:33,610 --> 00:48:37,670 在$ _GET信息 显示的URL。 1019 00:48:37,670 --> 00:48:41,380 >> 因此,如果我们往下看这里, 我们看到了一个YouTube链接。 1020 00:48:41,380 --> 00:48:43,760 我们看到这个问号。 1021 00:48:43,760 --> 00:48:47,730 我们看到ν=,然后一些价值。 1022 00:48:47,730 --> 00:48:53,460 回到这一想法的关键值 对,v是关键。 1023 00:48:53,460 --> 00:48:56,970 而在这里就是价值。 1024 00:48:56,970 --> 00:49:01,030 >> 所以,如果我们要到这个页面或者 编码此页面上,我们将有一个 1025 00:49:01,030 --> 00:49:04,000 变量$ _GET。 1026 00:49:04,000 --> 00:49:11,030 如果我们去了$ _GET开括号“V” 接近支架,非常类似于数组 1027 00:49:11,030 --> 00:49:15,000 符号,这是一个关联数组 因为我们没有使用索引。 1028 00:49:15,000 --> 00:49:16,710 被使用字符串作为键。 1029 00:49:16,710 --> 00:49:17,940 但非常类似的想法。 1030 00:49:17,940 --> 00:49:20,520 如果我们去了我们,将得到这个值。 1031 00:49:20,520 --> 00:49:23,276 >> 在这个页面,我们就能够 使用此值。 1032 00:49:23,276 --> 00:49:32,200 如果我们实际上看,让我们 去YouTube的页面。 1033 00:49:32,200 --> 00:49:35,140 我们应该看什么影片? 1034 00:49:35,140 --> 00:49:37,350 这其中,被人哈比人球迷? 1035 00:49:37,350 --> 00:49:40,731 >> 观众:是的。 1036 00:49:40,731 --> 00:49:44,750 >> JASON HIRSCHHORN:所以我复制 他们分享网址和 1037 00:49:44,750 --> 00:49:46,000 将其粘贴在一个新窗口。 1038 00:49:46,000 --> 00:49:48,550 1039 00:49:48,550 --> 00:50:00,470 而现在,如果你在这里,你会 请注意,再次 - 1040 00:50:00,470 --> 00:50:03,170 我要复制并粘贴到 gedit的,所以我们可以看到它做大。 1041 00:50:03,170 --> 00:50:16,530 1042 00:50:16,530 --> 00:50:19,720 你会发现,它有 这个问号。 1043 00:50:19,720 --> 00:50:22,150 问号将指定 在这之后一切都将是 1044 00:50:22,150 --> 00:50:23,530 保存在获取变量。 1045 00:50:23,530 --> 00:50:29,130 >> 然后,它具有V,这是第一 键,这第一个值。 1046 00:50:29,130 --> 00:50:30,710 符号是特殊的。 1047 00:50:30,710 --> 00:50:34,340 符号是在说,好吧,我们 完成了第一个值。 1048 00:50:34,340 --> 00:50:37,170 我们现在移动到另一个 键值对。 1049 00:50:37,170 --> 00:50:41,135 在这里,关键是所谓的功能, 并且该值是youtu.be。 1050 00:50:41,135 --> 00:50:44,010 1051 00:50:44,010 --> 00:50:50,710 >> 所以,如果我是一个编码这个页面, 有人去这个URL,我有 1052 00:50:50,710 --> 00:50:53,190 也许watch.php。 1053 00:50:53,190 --> 00:50:54,150 和我在编写这个。 1054 00:50:54,150 --> 00:50:57,060 我可以使用$ _GET变量。 1055 00:50:57,060 --> 00:51:02,740 我将有一个v和 我想有一个功能。 1056 00:51:02,740 --> 00:51:07,080 >> 如果我使用v键,我 会得到这个值。 1057 00:51:07,080 --> 00:51:14,145 如果我做了$ _GET支架“功能” 接近支架,我会得到这个值。 1058 00:51:14,145 --> 00:51:17,530 再次,它不一定 适用于 - 1059 00:51:17,530 --> 00:51:21,460 显然,YouTube的键和值 并获得信息并不适用于 1060 00:51:21,460 --> 00:51:22,700 本习题集7。 1061 00:51:22,700 --> 00:51:28,450 但有一些事情是我们 通过GET传递我们的习题集7。 1062 00:51:28,450 --> 00:51:33,120 当然,当你去一个网页 或编写自己的页面上, 1063 00:51:33,120 --> 00:51:36,440 $ _GET会派上用场 当你的编码。 1064 00:51:36,440 --> 00:51:41,030 >> 什么是一个原因使用$ _GET然后, 如果它可以提供没有隐私? 1065 00:51:41,030 --> 00:51:43,170 你看到所有这些信息 这是正在转移。 1066 00:51:43,170 --> 00:51:44,170 这一切都显示给用户。 1067 00:51:44,170 --> 00:51:49,060 但是,什么是一个原因,你可能 要保存的东西在$ _GET,如 1068 00:51:49,060 --> 00:51:50,310 反对的$ _POST? 1069 00:51:50,310 --> 00:51:52,650 1070 00:51:52,650 --> 00:51:53,900 为什么你可能想要做的是什么? 1071 00:51:53,900 --> 00:51:58,065 1072 00:51:58,065 --> 00:51:58,540 >> 好的。 1073 00:51:58,540 --> 00:52:00,310 我在测验1问你。 1074 00:52:00,310 --> 00:52:02,210 什么是$ _GET亲? 1075 00:52:02,210 --> 00:52:04,250 什么是1亲? 1076 00:52:04,250 --> 00:52:04,700 是啊 - 1077 00:52:04,700 --> 00:52:06,180 >> 观众:它更容易 共享信息。 1078 00:52:06,180 --> 00:52:07,040 >> JASON HIRSCHHORN:我觉得 这是伟大的。 1079 00:52:07,040 --> 00:52:07,870 它更容易分享信息。 1080 00:52:07,870 --> 00:52:09,360 它更容易书签。 1081 00:52:09,360 --> 00:52:15,260 >> 现在,您可以收藏, YouTube.com /手表?ν=的东西,去 1082 00:52:15,260 --> 00:52:16,900 该特定视频。 1083 00:52:16,900 --> 00:52:22,020 如果YouTube的总是做POST请求 不同的页面,每一个YouTube网址 1084 00:52:22,020 --> 00:52:22,985 将YouTube.com。 1085 00:52:22,985 --> 00:52:25,750 你可以不书签单一的视频。 1086 00:52:25,750 --> 00:52:28,160 因为如果你说的共享该链接 与别人,他们不 1087 00:52:28,160 --> 00:52:30,160 自动获取您的帖子变量。 1088 00:52:30,160 --> 00:52:33,570 他们只是得到这个链接,并在 链接是对谁都一样。 1089 00:52:33,570 --> 00:52:35,180 >> 所以这是亲。 1090 00:52:35,180 --> 00:52:38,850 它可以让你这个书签 信息或分享这些信息 1091 00:52:38,850 --> 00:52:40,840 或让它一点点 更加人性化。 1092 00:52:40,840 --> 00:52:43,890 当然,没有隐私, 所以我们这篇文章的变量。 1093 00:52:43,890 --> 00:52:47,570 和后信息不 显示的URL。 1094 00:52:47,570 --> 00:52:49,200 >> 这不是一个完全私有的。 1095 00:52:49,200 --> 00:52:51,710 但它是稍微更私人。 1096 00:52:51,710 --> 00:52:55,030 所以你会看到这个网址 到这里,cs50.net。 1097 00:52:55,030 --> 00:52:59,200 不论你登录到 网站,这将具有相同的 1098 00:52:59,200 --> 00:53:02,600 网址,cs50.net。 1099 00:53:02,600 --> 00:53:05,940 >> 很显然,事情是不同的,如果 你登录到该网站。 1100 00:53:05,940 --> 00:53:08,690 你有,一,可能是 输入您的PIN。 1101 00:53:08,690 --> 00:53:10,600 并且已确认 用服务器。 1102 00:53:10,600 --> 00:53:12,650 而且它可能保存 一些其他信息。 1103 00:53:12,650 --> 00:53:14,810 但是URL不会改变的。 1104 00:53:14,810 --> 00:53:17,080 >> 所以是这样的话,当 事情是由POST发送。 1105 00:53:17,080 --> 00:53:18,800 URL不会改变。 1106 00:53:18,800 --> 00:53:21,100 这个POST信息不 显示的URL。 1107 00:53:21,100 --> 00:53:26,150 但是,一些国家已经变了,也许 有保存在一些信息 1108 00:53:26,150 --> 00:53:27,400 POST变量。 1109 00:53:27,400 --> 00:53:30,460 1110 00:53:30,460 --> 00:53:36,880 >> 抱歉。在我走之前到SQL,任何 关于PHP,特别是问题 1111 00:53:36,880 --> 00:53:41,850 对事物的问题,我们没有去 你已经找到或任何语法或 1112 00:53:41,850 --> 00:53:43,855 关于PHP的逻辑问题? 1113 00:53:43,855 --> 00:53:49,300 1114 00:53:49,300 --> 00:53:50,050 确定。 1115 00:53:50,050 --> 00:53:54,400 >> 最终的语言,你会 在这个星期的互动是 1116 00:53:54,400 --> 00:53:58,920 结构化查询语言SQL, 常常发音续集。 1117 00:53:58,920 --> 00:54:01,740 这允许您与互动 数据库中的形式化方法。 1118 00:54:01,740 --> 00:54:04,390 它扮演了非常漂亮的PHP。 1119 00:54:04,390 --> 00:54:09,950 >> 正如您将在习题集7所见,我们 给你一个叫做查询功能。 1120 00:54:09,950 --> 00:54:14,990 它需要一个SQL字符串,并执行 对数据库的查询。 1121 00:54:14,990 --> 00:54:17,470 在过去的几年中,你是不是 鉴于此功能。 1122 00:54:17,470 --> 00:54:22,250 您必须使用PHP函数来使 数据库和支票,请在查询 1123 00:54:22,250 --> 00:54:24,230 的错误,然后得到结果。 1124 00:54:24,230 --> 00:54:26,120 >> 而实际上,这并不难, 因为再次,它起着 1125 00:54:26,120 --> 00:54:27,080 非常漂亮的PHP。 1126 00:54:27,080 --> 00:54:31,240 和PHP提供了大量的功能 与SQL数据库进行交互。 1127 00:54:31,240 --> 00:54:34,810 所以很多时候,两者的 这些一起去。 1128 00:54:34,810 --> 00:54:37,090 当然,你可以用互动 与任何SQL数据库 1129 00:54:37,090 --> 00:54:38,400 其它语言的数目。 1130 00:54:38,400 --> 00:54:41,420 但PHP是一个伟大的选择。 1131 00:54:41,420 --> 00:54:42,290 >> 数据库 - 1132 00:54:42,290 --> 00:54:46,030 我们就去了这个很快,因为 这是我们要去一个时髦词语 1133 00:54:46,030 --> 00:54:48,030 开始使用常 - 1134 00:54:48,030 --> 00:54:50,140 是表的集合。 1135 00:54:50,140 --> 00:54:53,960 因此,我们可以认为它 为Excel文件。 1136 00:54:53,960 --> 00:54:57,260 一个Excel文件中有多个选项卡 在屏幕的底部。 1137 00:54:57,260 --> 00:55:03,090 每个选项卡,我们现在会打电话给一个表,其中 一个表是行的集合。 1138 00:55:03,090 --> 00:55:04,060 >> 什么是行? 1139 00:55:04,060 --> 00:55:06,890 嗯,一排是一样的东西 在Excel文件中。 1140 00:55:06,890 --> 00:55:10,380 这只是对每个特定的值 特定领域或每个给定列。 1141 00:55:10,380 --> 00:55:12,010 这就像在一个表项。 1142 00:55:12,010 --> 00:55:16,570 这是一个学生,谁拥有一个ID,一个 特定的ID,和一个特定的名称和 1143 00:55:16,570 --> 00:55:17,910 具体的房子。 1144 00:55:17,910 --> 00:55:19,790 >> 因此,一个数据库是一个集合 表。 1145 00:55:19,790 --> 00:55:22,685 而表本身是一个 行或记录的数目。 1146 00:55:22,685 --> 00:55:25,470 1147 00:55:25,470 --> 00:55:28,280 还有,在各 表的某些字段。 1148 00:55:28,280 --> 00:55:32,130 并指定每个记录是什么 将有,字段有时也被称为 1149 00:55:32,130 --> 00:55:33,890 列,但通常称为字段。 1150 00:55:33,890 --> 00:55:38,270 >> 在这个非常简单的表,我有三个 域,一个ID字段,用户名 1151 00:55:38,270 --> 00:55:39,780 字段,和一个散列字段。 1152 00:55:39,780 --> 00:55:41,300 我有三行。 1153 00:55:41,300 --> 00:55:42,100 眼下,它们是空的。 1154 00:55:42,100 --> 00:55:44,850 他们可能不会是空的 如果这是我的真正的数据库。 1155 00:55:44,850 --> 00:55:50,530 >> 所以,如果你已经使用Excel中,类似的想法 什么你在Excel中做,虽然, 1156 00:55:50,530 --> 00:55:54,300 很明显,现在我们将能够 做强大得多的事情上 1157 00:55:54,300 --> 00:55:56,430 所存储的信息 在我们的数据库。 1158 00:55:56,430 --> 00:56:00,270 你将要创建自己一个 数据库习题集7。 1159 00:56:00,270 --> 00:56:02,820 但你会创建多个 在数据库中的表。 1160 00:56:02,820 --> 00:56:06,950 >> 您将创建一个数据库 或为用户的表。 1161 00:56:06,950 --> 00:56:12,830 你也可以创建一个表 大概股票交易,以保持 1162 00:56:12,830 --> 00:56:15,580 跟踪它们,因为你需要 实现历史记录功能。 1163 00:56:15,580 --> 00:56:18,370 这两个表将有 不同的领域。 1164 00:56:18,370 --> 00:56:22,190 例如,在用户现场,你 可能希望自己的用户名和 1165 00:56:22,190 --> 00:56:24,220 ID和他们的密码的哈希值。 1166 00:56:24,220 --> 00:56:28,450 >> 在库存表跟踪 历史或历史表中,您 1167 00:56:28,450 --> 00:56:31,620 可能不需要用户名 和散列和ID。 1168 00:56:31,620 --> 00:56:34,460 你可能只需要其中的一个 值是唯一的,联想到 1169 00:56:34,460 --> 00:56:35,830 它与给定的用户。 1170 00:56:35,830 --> 00:56:38,100 >> 但是,你要存储其他 之类的东西,什么时候 1171 00:56:38,100 --> 00:56:40,630 在事务中进行的。 1172 00:56:40,630 --> 00:56:42,380 在买入或卖出什么股票? 1173 00:56:42,380 --> 00:56:44,150 股票多少股 是买还是卖? 1174 00:56:44,150 --> 00:56:48,360 什么是价格在哪个 股票是买还是卖? 1175 00:56:48,360 --> 00:56:50,180 >> 所以,再一次,你要进行交互 一个数据库,这是 1176 00:56:50,180 --> 00:56:51,350 将有多个表。 1177 00:56:51,350 --> 00:56:54,340 每个表都将有 它自己的一套字段。 1178 00:56:54,340 --> 00:56:58,430 然而,有可能会出现类似的 字段中的每个表中,该 1179 00:56:58,430 --> 00:57:00,130 它们涉及到彼此。 1180 00:57:00,130 --> 00:57:02,660 通常,这是一个ID字段。 1181 00:57:02,660 --> 00:57:07,000 >> 因为如果每个用户都有一个唯一的ID 和你的ID与每一个相关联 1182 00:57:07,000 --> 00:57:09,365 交易用户发出或 所有用户的历史。 1183 00:57:09,365 --> 00:57:12,760 1184 00:57:12,760 --> 00:57:13,830 和你有用户的ID。 1185 00:57:13,830 --> 00:57:15,365 您可以获取信息 从任一台。 1186 00:57:15,365 --> 00:57:19,770 你可以得到他们的用户名,你 可以得到所有他们的交易。 1187 00:57:19,770 --> 00:57:24,410 >> 关于数据库的任何问题, 或具体问题? 1188 00:57:24,410 --> 00:57:25,240 其实,让我们认为。 1189 00:57:25,240 --> 00:57:27,410 我们会在那里的两个方面。 1190 00:57:27,410 --> 00:57:31,210 >> 因此,有四个操作 您将使用的数据库 1191 00:57:31,210 --> 00:57:34,790 习题集7和可能 永远不会使用。 1192 00:57:34,790 --> 00:57:38,040 你想要做的第一件事是插入 一个新的记录到一个表或一个 1193 00:57:38,040 --> 00:57:39,960 新行插入表中。 1194 00:57:39,960 --> 00:57:46,070 这是通用的功能, 通用的形式,SQL查询。 1195 00:57:46,070 --> 00:57:52,240 >> INSERT INTO表,不管列 要插入,然后 1196 00:57:52,240 --> 00:57:58,740 那你会想要的值 投入这些列或字段。 1197 00:57:58,740 --> 00:58:03,980 如果你有在多表 数据库或多个数据库,您 1198 00:58:03,980 --> 00:58:06,630 可能还需要指定数据库 和您想要的表 1199 00:58:06,630 --> 00:58:07,980 把事情落实。 1200 00:58:07,980 --> 00:58:11,390 但很简单,如果你要插入 到的东西,你说,这里有 1201 00:58:11,390 --> 00:58:12,890 我要插入到字段。 1202 00:58:12,890 --> 00:58:14,740 和这里的值。 1203 00:58:14,740 --> 00:58:18,840 >> 在一些表,也和这个用户的 表是一个很好的例子。 1204 00:58:18,840 --> 00:58:21,940 大概在这个用户的表和 大概在P-设置你的用户的表 1205 00:58:21,940 --> 00:58:24,200 7,不只是一个用户名的值。 1206 00:58:24,200 --> 00:58:27,100 这里不只是一个现金价值, 或现场,而。 1207 00:58:27,100 --> 00:58:29,140 此外,还有一个ID字段。 1208 00:58:29,140 --> 00:58:31,110 >> 我不打算插入ID字段。 1209 00:58:31,110 --> 00:58:34,020 那将给予 我自动,当一个 1210 00:58:34,020 --> 00:58:35,810 新记录插入。 1211 00:58:35,810 --> 00:58:37,820 因此,有一些领域,你 可以设置为自动的。 1212 00:58:37,820 --> 00:58:41,740 >> 也许你想给每个用户 10,000元现金蝙蝠。 1213 00:58:41,740 --> 00:58:43,470 所以我不需要插入 多种现金此处。 1214 00:58:43,470 --> 00:58:45,860 我只需要插入的用户名。 1215 00:58:45,860 --> 00:58:49,230 然后,现金字段将 预填充的,而ID字段将 1216 00:58:49,230 --> 00:58:50,590 预先填入。 1217 00:58:50,590 --> 00:58:53,640 >> 所以通常情况下,我们不会插入 事到每一个领域,因为 1218 00:58:53,640 --> 00:58:55,400 与其他字段中会预先填入。 1219 00:58:55,400 --> 00:58:58,320 因为这是我们如何 建立该表。 1220 00:58:58,320 --> 00:59:01,280 >> 你要去的第二件事 想要做的是删除一条记录。 1221 00:59:01,280 --> 00:59:02,900 删除的东西是很简单的。 1222 00:59:02,900 --> 00:59:05,660 你给你想要的表 要删除的东西。 1223 00:59:05,660 --> 00:59:11,202 和你说好,我想删除 记录有米洛的用户名。 1224 00:59:11,202 --> 00:59:16,180 或者我要删除所有记录的 有米洛的用户名,或者是一个 1225 00:59:16,180 --> 00:59:18,700 交易从用户ID号2。 1226 00:59:18,700 --> 00:59:21,950 1227 00:59:21,950 --> 00:59:24,809 对这些问题的任何 两种类型的查询? 1228 00:59:24,809 --> 00:59:26,059 >> 观众:[听不清]。 1229 00:59:26,059 --> 00:59:28,721 1230 00:59:28,721 --> 00:59:30,770 >> JASON HIRSCHHORN:是的。 1231 00:59:30,770 --> 00:59:33,530 所以我打算使用行和记录 互换和一些 1232 00:59:33,530 --> 00:59:35,400 与列和字段。 1233 00:59:35,400 --> 00:59:37,650 但有一排是一个记录。 1234 00:59:37,650 --> 00:59:40,080 一列是一个字段,将 回到这个表。 1235 00:59:40,080 --> 00:59:44,210 1236 00:59:44,210 --> 00:59:45,420 >> 确定。 1237 00:59:45,420 --> 00:59:47,310 接下来的事情,你很可能 要做的是得到一些 1238 00:59:47,310 --> 00:59:48,400 从表中的信息。 1239 00:59:48,400 --> 00:59:50,090 这是一个选择查询。 1240 00:59:50,090 --> 00:59:52,330 再次,什么表 我会从选择? 1241 00:59:52,330 --> 00:59:58,370 而我要选择什么样的列,或 我要选择什么样的价值和 1242 00:59:58,370 --> 00:59:59,530 从哪一行? 1243 00:59:59,530 --> 01:00:01,120 >> 因此,选择一个特定的一点。 1244 01:00:01,120 --> 01:00:03,620 我说好,我想这个表。 1245 01:00:03,620 --> 01:00:09,350 然后我希望列名,并 我希望它从ID为2行。 1246 01:00:09,350 --> 01:00:11,030 这是做一个选择的一种方式。 1247 01:00:11,030 --> 01:00:14,180 >> 或者,我可以说,给我的每一个 单一的用户名。 1248 01:00:14,180 --> 01:00:18,200 或者,我可以说,给我一个完整的 从这个表行,其中 1249 01:00:18,200 --> 01:00:19,460 用户名是1。 1250 01:00:19,460 --> 01:00:22,300 因此,有几种不同的方法来 做选择查询,这取决于如何 1251 01:00:22,300 --> 01:00:24,130 你要多的信息, 1252 01:00:24,130 --> 01:00:29,410 >> 你永远可以选择一切 从具体的表,然后循环 1253 01:00:29,410 --> 01:00:31,320 通过它,挑选出 你想要的东西。 1254 01:00:31,320 --> 01:00:33,940 但是要记住,如果你选择 很多事情从一个表和你 1255 01:00:33,940 --> 01:00:37,400 有一个非常大的表中,将采取 有一段时间,所以最好只选择 1256 01:00:37,400 --> 01:00:40,000 东西,你要去 使用结束了。 1257 01:00:40,000 --> 01:00:43,580 >> 此外,随着选择,并与所有这些 其他的SQL命令,以及,我 1258 01:00:43,580 --> 01:00:45,760 给你最基本的版本。 1259 01:00:45,760 --> 01:00:51,600 但是说,我选择的用户,我想 打印出来的字母顺序, 1260 01:00:51,600 --> 01:00:56,710 我可以选择所有用户,然后排序 按字母顺序在我的代码。 1261 01:00:56,710 --> 01:01:01,990 >> 或者是有办法写选择 查询时,选择的东西在 1262 01:01:01,990 --> 01:01:06,580 按字母顺序排列的方式,根据关闭的 特定的列,以升序或 1263 01:01:06,580 --> 01:01:07,490 降。 1264 01:01:07,490 --> 01:01:11,660 所以请记住,有很多你 想要做也许可以在做 1265 01:01:11,660 --> 01:01:15,070 通过一个附加的查询 属性。 1266 01:01:15,070 --> 01:01:19,120 所以,不要仰视这些查询或在线 其他的事情你可以用这些做 1267 01:01:19,120 --> 01:01:21,410 查询将其展开。 1268 01:01:21,410 --> 01:01:25,020 >> 最后,过去的事情你想做的事 没有东西插入或删除 1269 01:01:25,020 --> 01:01:26,700 东西,而是 更新的东西。 1270 01:01:26,700 --> 01:01:30,380 以及与该更新完成 查询,并再次,是什么表。 1271 01:01:30,380 --> 01:01:32,530 和我想要什么样的变化使? 1272 01:01:32,530 --> 01:01:35,915 以及哪一行或记录做 我要做出的改变? 1273 01:01:35,915 --> 01:01:38,720 1274 01:01:38,720 --> 01:01:40,300 对SQL有问题吗? 1275 01:01:40,300 --> 01:01:47,070 1276 01:01:47,070 --> 01:01:47,310 >> 确定。 1277 01:01:47,310 --> 01:01:49,080 因此,我们有大约15分钟。 1278 01:01:49,080 --> 01:01:51,460 这是最后一张幻灯片我有。 1279 01:01:51,460 --> 01:01:55,380 并希望,这最后一张幻灯片是一个 良好的塞盖成问题集, 1280 01:01:55,380 --> 01:01:58,820 因为理解,我们要 插入记录,删除,选择 1281 01:01:58,820 --> 01:02:03,420 他们,并更新他们会帮助我们 明白了较大的逻辑和流程 1282 01:02:03,420 --> 01:02:05,570 的习题集7。 1283 01:02:05,570 --> 01:02:08,330 >> 所以我知道所有的答案 对这些问题的。 1284 01:02:08,330 --> 01:02:10,570 我不会告诉你 所有的答案。 1285 01:02:10,570 --> 01:02:15,530 但是,如果别人想 提出了一个问题,到组或 1286 01:02:15,530 --> 01:02:18,700 回答这些问题之一,我们可以 使用它作为一个跳点 1287 01:02:18,700 --> 01:02:20,311 说说问题集。 1288 01:02:20,311 --> 01:02:24,159 1289 01:02:24,159 --> 01:02:27,260 或者,如果某人有一个更通用的 关问题的问题集,感觉 1290 01:02:27,260 --> 01:02:28,210 免费问那。 1291 01:02:28,210 --> 01:02:29,460 我们可以从这里开始。 1292 01:02:29,460 --> 01:02:32,840 1293 01:02:32,840 --> 01:02:35,973 请记住,你是沉默 是伤害大家。 1294 01:02:35,973 --> 01:02:36,376 是啊。 1295 01:02:36,376 --> 01:02:39,540 >> 观众:所以是传递的唯一途径 变量,并从不同的网页 1296 01:02:39,540 --> 01:02:44,532 页,或最方便的 方式,使用POST或GET? 1297 01:02:44,532 --> 01:02:52,380 >> JASON HIRSCHHORN:所以,是的,那就是 最便捷的方式说 - 当 1298 01:02:52,380 --> 01:02:53,970 有人填表 - 1299 01:02:53,970 --> 01:02:57,540 得到另一个网络信息 页面,使用GET或POST。 1300 01:02:57,540 --> 01:03:00,400 1301 01:03:00,400 --> 01:03:04,320 因为框架我们使用 在这个问题集,你会发现 1302 01:03:04,320 --> 01:03:08,630 是,很多时候,我们 渲染另一个页面。 1303 01:03:08,630 --> 01:03:12,420 我们或者我们渲染另一个文件,不 一定另一页。 1304 01:03:12,420 --> 01:03:14,050 >> 所以我们在传递一个变量。 1305 01:03:14,050 --> 01:03:16,400 然后,它呈现一个 HTML页面时,使用 1306 01:03:16,400 --> 01:03:18,220 从该变量的信息。 1307 01:03:18,220 --> 01:03:20,790 这在技术上并不传递 之间的信息 1308 01:03:20,790 --> 01:03:21,910 不同的网页。 1309 01:03:21,910 --> 01:03:24,600 这是传递信息 不同的文件之间。 1310 01:03:24,600 --> 01:03:26,710 >> 因此,我们可以使用任何 变量来做到这一点。 1311 01:03:26,710 --> 01:03:33,230 但是,是的,如果我们想通过 从一个特定的页面信息 1312 01:03:33,230 --> 01:03:36,850 另一页,GET和POST会 要做到这一点的方法。 1313 01:03:36,850 --> 01:03:43,060 1314 01:03:43,060 --> 01:03:45,765 任何其他问题 问题设置? 1315 01:03:45,765 --> 01:03:49,490 1316 01:03:49,490 --> 01:03:50,150 >> 确定。 1317 01:03:50,150 --> 01:03:53,660 让我们通过,那么,具体的 问题的一部分设置。 1318 01:03:53,660 --> 01:04:00,260 你将需要在一个点上, 显示某人的组合上 1319 01:04:00,260 --> 01:04:01,710 在屏幕上。 1320 01:04:01,710 --> 01:04:06,454 这是什么意思,当我说组合, 在这个问题的上下文中设置? 1321 01:04:06,454 --> 01:04:11,350 >> 观众:这就像股票,他们 有他们自己怎么样,多少股, 1322 01:04:11,350 --> 01:04:13,760 价格,多少 钱,他们已经离开。 1323 01:04:13,760 --> 01:04:15,235 >> JASON HIRSCHHORN:听起来不错。 1324 01:04:15,235 --> 01:04:19,640 所以,我想显示所有的股票 他们拥有每只股票公司 1325 01:04:19,640 --> 01:04:23,770 股,大概是多少那 价值,然后一个单独的变量, 1326 01:04:23,770 --> 01:04:25,960 多少钱他们自己。 1327 01:04:25,960 --> 01:04:27,150 所以说,我想描述。 1328 01:04:27,150 --> 01:04:29,660 让我们开始谈论我怎么能 去这样做,我有什么表 1329 01:04:29,660 --> 01:04:31,210 将需要有 能够做到这一点。 1330 01:04:31,210 --> 01:04:34,070 1331 01:04:34,070 --> 01:04:34,460 是啊 - 1332 01:04:34,460 --> 01:04:37,970 >> 观众:好用户,然后,我猜 你可以做一个所谓的表 1333 01:04:37,970 --> 01:04:41,920 股份或类似的东西,这 会是如何,他们已经买了很多。 1334 01:04:41,920 --> 01:04:42,660 >> JASON HIRSCHHORN:确定。 1335 01:04:42,660 --> 01:04:46,530 所以我会需要一个称为表 用户,它记录的 1336 01:04:46,530 --> 01:04:50,640 用户名,据推测,可能是一些标识, 可能是一个单独的密码。 1337 01:04:50,640 --> 01:04:52,850 什么是别的东西,你 刚才说的关联? 1338 01:04:52,850 --> 01:04:55,510 除了迈克尔,什么是人 这与相关的其他东西 1339 01:04:55,510 --> 01:04:58,270 每一个用户,他们独有的? 1340 01:04:58,270 --> 01:05:00,050 >> 观众:ID。 1341 01:05:00,050 --> 01:05:01,170 >> JASON HIRSCHHORN:ID - 1342 01:05:01,170 --> 01:05:03,540 什么是一件事,我们是 可能会想 1343 01:05:03,540 --> 01:05:05,685 此页面上显示? 1344 01:05:05,685 --> 01:05:06,990 >> 观众:他们的名字。 1345 01:05:06,990 --> 01:05:10,550 >> JASON HIRSCHHORN:他们的名字 - 有什么 另一件事与此相关的 1346 01:05:10,550 --> 01:05:11,420 特别是设置的问题? 1347 01:05:11,420 --> 01:05:14,110 >> 观众:什么他们拥有的股票 - 1348 01:05:14,110 --> 01:05:16,650 >> JASON HIRSCHHORN:有将 有很多他们自己的什么股票。 1349 01:05:16,650 --> 01:05:19,670 什么是一个特定的值,虽然, 他们将不得不 1350 01:05:19,670 --> 01:05:22,640 与他们有联系? 1351 01:05:22,640 --> 01:05:25,709 他们怎样买 并出售他们的股票? 1352 01:05:25,709 --> 01:05:26,595 >> 观众:现金。 1353 01:05:26,595 --> 01:05:28,100 >> JASON HIRSCHHORN:他们是 将有现金。 1354 01:05:28,100 --> 01:05:31,020 因此,每个用户将不得不 一个值,以换取现金。 1355 01:05:31,020 --> 01:05:32,360 而这将是 对于每个用户唯一。 1356 01:05:32,360 --> 01:05:35,040 因此在用户的表,它使 感投入现金。 1357 01:05:35,040 --> 01:05:39,100 >> 你可以,当然,创建另一个 表具有用户ID和其 1358 01:05:39,100 --> 01:05:40,200 的现金价值。 1359 01:05:40,200 --> 01:05:41,070 但它没有任何意义。 1360 01:05:41,070 --> 01:05:43,410 这是有道理的只是把 所有这一切在一个表中。 1361 01:05:43,410 --> 01:05:46,860 >> 所以,我们将有一个表 与该信息。 1362 01:05:46,860 --> 01:05:48,360 然后,有什么其他的表 我们会得到什么? 1363 01:05:48,360 --> 01:05:49,430 你说,一个种群的表。 1364 01:05:49,430 --> 01:05:50,680 什么是我们投入 该股票的表? 1365 01:05:50,680 --> 01:05:55,860 1366 01:05:55,860 --> 01:05:57,530 任何人,想法 - 1367 01:05:57,530 --> 01:05:58,796 >> 观众:该公司。 1368 01:05:58,796 --> 01:06:00,020 >> JASON HIRSCHHORN:我们要去 投入的名字 1369 01:06:00,020 --> 01:06:03,620 公司,所以AAPL苹果。 1370 01:06:03,620 --> 01:06:04,050 是啊。 1371 01:06:04,050 --> 01:06:05,390 >> 观众:有多少股, 他们有多少的价值。 1372 01:06:05,390 --> 01:06:08,590 >> JASON HIRSCHHORN:有多少股, 他们有多少是值得 - 1373 01:06:08,590 --> 01:06:10,630 有什么别的东西,我们 需要在该表? 1374 01:06:10,630 --> 01:06:12,770 >> 观众:一个用户ID来索引它。 1375 01:06:12,770 --> 01:06:14,000 >> JASON HIRSCHHORN:一个用户名。 1376 01:06:14,000 --> 01:06:16,070 因此,在该表中,我们将 可能有 - 1377 01:06:16,070 --> 01:06:18,610 比方说,如果是有人谁拥有 三只股票,三排,每 1378 01:06:18,610 --> 01:06:23,730 该用户ID或个人用户 ID,但不同的公司名称,一个 1379 01:06:23,730 --> 01:06:28,570 不同数量的股份大概, 并为每个不同的价格值 1380 01:06:28,570 --> 01:06:29,820 这些股票的。 1381 01:06:29,820 --> 01:06:34,690 1382 01:06:34,690 --> 01:06:37,130 再次,什么我现在说的是不是 一定的执行情况, 1383 01:06:37,130 --> 01:06:39,150 因为你知道有一些 有效的方法来实现它。 1384 01:06:39,150 --> 01:06:41,020 但是,这是一个良好的开端。 1385 01:06:41,020 --> 01:06:41,430 >> 确定。 1386 01:06:41,430 --> 01:06:42,830 因此,这些都是这两个表我们。 1387 01:06:42,830 --> 01:06:44,470 现在,我们要显示此页面。 1388 01:06:44,470 --> 01:06:48,510 什么是查询中的第一种类型 我们需要做。 1389 01:06:48,510 --> 01:06:52,190 在每个页面上,假定是一个用户是 登录后,我们有自己的用户ID。 1390 01:06:52,190 --> 01:06:55,480 那么,什么是第一类 查询我们需要做什么呢? 1391 01:06:55,480 --> 01:06:55,910 是啊。 1392 01:06:55,910 --> 01:06:56,936 >> 观众:他们的用户ID。 1393 01:06:56,936 --> 01:07:00,090 >> JASON HIRSCHHORN:我们有自己的用户ID, 当我们开始代码的 1394 01:07:00,090 --> 01:07:01,340 一开始我们的页面。 1395 01:07:01,340 --> 01:07:03,880 1396 01:07:03,880 --> 01:07:06,470 那么什么是查询我们的第一种类型 需要使给定一个用户的ID? 1397 01:07:06,470 --> 01:07:09,580 1398 01:07:09,580 --> 01:07:10,530 我们过了四种类型。 1399 01:07:10,530 --> 01:07:11,860 这里只有四个可能的答案。 1400 01:07:11,860 --> 01:07:13,230 >> 观众:是选择一个记录。 1401 01:07:13,230 --> 01:07:14,710 >> JASON HIRSCHHORN:A选择 - 1402 01:07:14,710 --> 01:07:19,110 我们希望从用户的选择 表就搞定了,让我们说, 1403 01:07:19,110 --> 01:07:20,040 其数额的现金。 1404 01:07:20,040 --> 01:07:22,450 我们可以打印的现金金额 在屏幕的顶部。 1405 01:07:22,450 --> 01:07:22,720 确定。 1406 01:07:22,720 --> 01:07:24,210 什么是下一个类 查询我们想干什么? 1407 01:07:24,210 --> 01:07:34,650 1408 01:07:34,650 --> 01:07:36,160 >> 我们有一些其他的东西 我们需要显示。 1409 01:07:36,160 --> 01:07:37,480 那些被保存在另一个表中。 1410 01:07:37,480 --> 01:07:38,300 那么我们如何得到呢? 1411 01:07:38,300 --> 01:07:40,106 >> 观众:你选择它们。 1412 01:07:40,106 --> 01:07:42,490 >> JASON HIRSCHHORN:A选择 - 再次, 只有四个选项。 1413 01:07:42,490 --> 01:07:44,180 选择可能的声音 像那个合适的人。 1414 01:07:44,180 --> 01:07:47,510 因此,我们需要做的另一个选择查询, 再次使用该用户ID。 1415 01:07:47,510 --> 01:07:50,370 而现在,我们要返回的不只是一个 行,BU符合我们的所有行 1416 01:07:50,370 --> 01:07:53,200 标准,其中用户ID等于1。 1417 01:07:53,200 --> 01:07:56,790 >> 然后我们可以去让一个循环只 打印所有那些在屏幕上, 1418 01:07:56,790 --> 01:07:59,250 也许打印出该公司从 每个那些在屏幕上。 1419 01:07:59,250 --> 01:08:02,430 太好了,这听起来像这 显示组合,多不了多少 1420 01:08:02,430 --> 01:08:03,810 较复杂。 1421 01:08:03,810 --> 01:08:07,460 >> OK,然后用户决定他们 有足够的钱留下来。 1422 01:08:07,460 --> 01:08:09,900 他们想买一些 一只股票的股票。 1423 01:08:09,900 --> 01:08:12,580 比方说,他们已经拥有 这家公司的股票了。 1424 01:08:12,580 --> 01:08:14,110 >> 于是他们去你的购买页面。 1425 01:08:14,110 --> 01:08:16,830 他们输入公司的名称。 1426 01:08:16,830 --> 01:08:20,380 这是该查询,在输入后的 公司的名字,你需要 1427 01:08:20,380 --> 01:08:22,819 执行下一个? 1428 01:08:22,819 --> 01:08:23,180 是啊。 1429 01:08:23,180 --> 01:08:23,960 >> 观众:更新。 1430 01:08:23,960 --> 01:08:26,670 >> JASON HIRSCHHORN:更新 - 什么 表你要更新? 1431 01:08:26,670 --> 01:08:29,018 >> 观众:他们的表,根据 在他们的身份证号码? 1432 01:08:29,018 --> 01:08:31,880 >> JASON HIRSCHHORN:所以更新 没有用户的表 - 1433 01:08:31,880 --> 01:08:36,029 1434 01:08:36,029 --> 01:08:40,899 所以更新库存表,其中 用户ID不能只匹配,但 1435 01:08:40,899 --> 01:08:43,160 股票名称也匹配。 1436 01:08:43,160 --> 01:08:45,660 你会得到一定的价值。 1437 01:08:45,660 --> 01:08:48,270 然后,你要取该值 并添加然而许多股票,他们 1438 01:08:48,270 --> 01:08:49,890 想买它。 1439 01:08:49,890 --> 01:08:53,420 >> 所以,你不希望盲目 覆盖该值。 1440 01:08:53,420 --> 01:08:56,330 但是你可以,​​事实上,采取这种初始 重视和刚刚更新。 1441 01:08:56,330 --> 01:09:00,790 你可以做一个加等于, 而不仅仅是一个等号。 1442 01:09:00,790 --> 01:09:03,689 >> 是什么东西,但 - 如果我们 想到这一点,我们要 1443 01:09:03,689 --> 01:09:08,090 尽可能强大 - 我们应该做的 我们运行之前更新查询? 1444 01:09:08,090 --> 01:09:09,859 他们想要买五十年后,​​苹果的。 1445 01:09:09,859 --> 01:09:11,030 苹果的每份额为200元。 1446 01:09:11,030 --> 01:09:12,762 >> 观众:我们首先应该检查的钱。 1447 01:09:12,762 --> 01:09:15,130 >> JASON HIRSCHHORN:我们应该 首先检查的钱。 1448 01:09:15,130 --> 01:09:16,680 我们应该确保他们 有足够的钱。 1449 01:09:16,680 --> 01:09:20,766 我们可以执行什么样的查询 确保他们有足够的钱? 1450 01:09:20,766 --> 01:09:22,143 >> 观众:另一种选择。 1451 01:09:22,143 --> 01:09:23,680 >> JASON HIRSCHHORN:A选择 - 1452 01:09:23,680 --> 01:09:26,580 我们根据他们的用户ID进行选择, 拿到现金的价值。 1453 01:09:26,580 --> 01:09:27,620 做一些快速的数学运算。 1454 01:09:27,620 --> 01:09:30,279 如果传递鼓起, 他们有足够的现金。 1455 01:09:30,279 --> 01:09:31,580 然后我们可以运行我们的更新。 1456 01:09:31,580 --> 01:09:33,850 或者,也许,如果不是,我们通过即可。 1457 01:09:33,850 --> 01:09:35,370 我们给他们一个警告。 1458 01:09:35,370 --> 01:09:35,710 >> 确定。 1459 01:09:35,710 --> 01:09:36,560 说他们没有一家公司。 1460 01:09:36,560 --> 01:09:37,310 他们买一个新的公司。 1461 01:09:37,310 --> 01:09:39,910 他们购买微软。 1462 01:09:39,910 --> 01:09:41,910 我们想要什么样的查询做, 如果他们想购买微软? 1463 01:09:41,910 --> 01:09:43,350 他们不拥有任何微软。 1464 01:09:43,350 --> 01:09:47,520 没有马努,任何人,任何人 除了马库斯? 1465 01:09:47,520 --> 01:09:48,229 卡洛斯 - 1466 01:09:48,229 --> 01:09:50,870 >> 观众:A选择,以确保 他们有足够的钱。 1467 01:09:50,870 --> 01:09:51,770 >> JASON HIRSCHHORN:听起来不错。 1468 01:09:51,770 --> 01:09:54,815 >> 观众:然后你插入 在[听不清]。 1469 01:09:54,815 --> 01:09:56,500 >> JASON HIRSCHHORN:没错,我们是 将要插入 1470 01:09:56,500 --> 01:09:57,800 进入股市的表。 1471 01:09:57,800 --> 01:09:59,370 我们要去想插入。 1472 01:09:59,370 --> 01:10:02,510 我们可以将其用户ID,名字 的公司,以及有多少股 1473 01:10:02,510 --> 01:10:03,940 他们想买。 1474 01:10:03,940 --> 01:10:08,040 >> 什么是一些其他操作的 为你的网页或功能 1475 01:10:08,040 --> 01:10:10,420 将不得不在P-设置来实现 7,我们应该走了过来? 1476 01:10:10,420 --> 01:10:12,160 >> 观众:其实,我种得 关于这一个问题。 1477 01:10:12,160 --> 01:10:18,000 之前您显示组合,应 您检查雅虎的网站上 1478 01:10:18,000 --> 01:10:19,920 确定股票的价格 有没有改变? 1479 01:10:19,920 --> 01:10:21,660 >> JASON HIRSCHHORN:这是声音 是个好主意。 1480 01:10:21,660 --> 01:10:27,260 那么,什么马库斯说的是,OK,股票 价格是不断变化的。 1481 01:10:27,260 --> 01:10:32,840 在自己拥有的表中的股票,我们的 表称为股票,我们可以拯救 1482 01:10:32,840 --> 01:10:35,360 股票的价格,他们买了它在。 1483 01:10:35,360 --> 01:10:37,990 >> 但这似乎不是那么强劲, 因为股票的价格 1484 01:10:37,990 --> 01:10:39,490 不断改变的。 1485 01:10:39,490 --> 01:10:41,990 所以,事实上,你可能不需要 保存股票的价格。 1486 01:10:41,990 --> 01:10:45,230 但每次你施展 投资组合,你刷新或更新 1487 01:10:45,230 --> 01:10:46,280 价的股票。 1488 01:10:46,280 --> 01:10:48,720 >> 如果你有 - 你已经。 1489 01:10:48,720 --> 01:10:51,330 我知道你一直都在看的 习题回来了。 1490 01:10:51,330 --> 01:10:55,410 你已经意识到,我们已经写了 一些代码给你,让你 1491 01:10:55,410 --> 01:10:57,650 获得股票的价格, 给定一个公司的名字。 1492 01:10:57,650 --> 01:10:59,620 >> 所以,是的,这听起来可能 更强大一点。 1493 01:10:59,620 --> 01:11:04,260 但该表并不一定需要 保存股票的价格。 1494 01:11:04,260 --> 01:11:04,720 确定。 1495 01:11:04,720 --> 01:11:07,590 什么是一些其他的功能你 需要实现这个星期, 1496 01:11:07,590 --> 01:11:10,340 我们可以谈? 1497 01:11:10,340 --> 01:11:11,590 我想谈谈他们。 1498 01:11:11,590 --> 01:11:14,342 1499 01:11:14,342 --> 01:11:16,516 >> 你想谈什么? 1500 01:11:16,516 --> 01:11:17,810 这也可能是在这个规范。 1501 01:11:17,810 --> 01:11:20,600 我只是向下滚动至底部 规范和问我的第一个字 1502 01:11:20,600 --> 01:11:21,850 你看,没有任何意义。 1503 01:11:21,850 --> 01:11:55,130 1504 01:11:55,130 --> 01:11:56,960 另外一个功能 - 1505 01:11:56,960 --> 01:11:57,840 让我们来谈谈之一。 1506 01:11:57,840 --> 01:12:00,775 我们会从那里开始。 1507 01:12:00,775 --> 01:12:02,065 >> 观众:记录的历史。 1508 01:12:02,065 --> 01:12:03,960 >> JASON HIRSCHHORN:录音 历史上,伟大的。 1509 01:12:03,960 --> 01:12:06,920 所以你将不得不跟踪 交易的历史。 1510 01:12:06,920 --> 01:12:10,840 1511 01:12:10,840 --> 01:12:14,270 所以,你要跟踪每一个的 一次,他们买进或卖出股票。 1512 01:12:14,270 --> 01:12:15,160 >> 我买我的股票。 1513 01:12:15,160 --> 01:12:18,580 我们刚才说了,它很可能是有道理的 包括一个选择,让他们 1514 01:12:18,580 --> 01:12:20,220 金额现金回来看看。 1515 01:12:20,220 --> 01:12:25,270 它可能是聪明的,然后到包括 插入或更新,这取决于 1516 01:12:25,270 --> 01:12:27,720 不管他们是否拥有该股票。 1517 01:12:27,720 --> 01:12:32,740 如果我们也想跟踪 一个历史,我们该怎么办呢? 1518 01:12:32,740 --> 01:12:37,530 1519 01:12:37,530 --> 01:12:38,720 这是否在股票表走? 1520 01:12:38,720 --> 01:12:39,822 >> 观众:号 1521 01:12:39,822 --> 01:12:42,130 >> JASON HIRSCHHORN:不,它可能 不用在不同的表。 1522 01:12:42,130 --> 01:12:44,040 因为说你买10 苹果公司的股票。 1523 01:12:44,040 --> 01:12:45,370 然后你再买10股。 1524 01:12:45,370 --> 01:12:46,610 你想拖独立的记录。 1525 01:12:46,610 --> 01:12:47,610 这是两个独立的交易。 1526 01:12:47,610 --> 01:12:50,510 >> 因此,我们有另一个表中, 一个历史表。 1527 01:12:50,510 --> 01:12:51,880 所以,再一次,我们买的。 1528 01:12:51,880 --> 01:12:54,080 我们执行一个选择,然后 插入或更新。 1529 01:12:54,080 --> 01:12:56,410 我们接下来做什么? 1530 01:12:56,410 --> 01:13:00,410 什么是我们执行下一个查询 当我们买东西? 1531 01:13:00,410 --> 01:13:01,430 我们想跟踪的历史。 1532 01:13:01,430 --> 01:13:01,570 是啊。 1533 01:13:01,570 --> 01:13:05,195 >> 观众:你想跟踪 失败的交易了。 1534 01:13:05,195 --> 01:13:07,700 >> JASON HIRSCHHORN:嗯,以前我们 说什么类型的事务, 1535 01:13:07,700 --> 01:13:11,080 什么我们要 - 1536 01:13:11,080 --> 01:13:13,910 什么类型的查询,卡洛斯,会 让我们来跟踪 1537 01:13:13,910 --> 01:13:16,216 事情有什么看法? 1538 01:13:16,216 --> 01:13:17,860 你有四个猜测。 1539 01:13:17,860 --> 01:13:18,660 哪一个你觉得呢? 1540 01:13:18,660 --> 01:13:20,835 >> 观众:更新。 1541 01:13:20,835 --> 01:13:22,400 >> JASON HIRSCHHORN:不更新。 1542 01:13:22,400 --> 01:13:25,250 什么是你的第二个猜测? 1543 01:13:25,250 --> 01:13:26,730 >> 对象:选择。 1544 01:13:26,730 --> 01:13:30,020 >> JASON HIRSCHHORN:如果你想保持 轨道的东西,你可能想 1545 01:13:30,020 --> 01:13:33,310 到它的地方写下来 或将其保存供以后使用。 1546 01:13:33,310 --> 01:13:37,054 所以,如果不更新,那么 - 1547 01:13:37,054 --> 01:13:38,310 >> 观众:插入它。 1548 01:13:38,310 --> 01:13:39,553 >> JASON HIRSCHHORN:插入,我们走吧。 1549 01:13:39,553 --> 01:13:44,230 是的,所以您选择的金额 现金他们,声音很大。 1550 01:13:44,230 --> 01:13:45,320 他们没有足够的现金。 1551 01:13:45,320 --> 01:13:46,720 该交易是行不通的。 1552 01:13:46,720 --> 01:13:49,440 不,你不需要保持跟踪 如果它不工作的事务。 1553 01:13:49,440 --> 01:13:52,280 或者你可以,如果你想 给他们一个困难时期。 1554 01:13:52,280 --> 01:13:53,430 但你不必。 1555 01:13:53,430 --> 01:13:55,820 >> 然后,您插入或更新 在他们的库存表。 1556 01:13:55,820 --> 01:13:57,260 而现在,你有你的其他表。 1557 01:13:57,260 --> 01:13:59,790 你有你的历史表或 无论你怎么称呼它。 1558 01:13:59,790 --> 01:14:02,920 并在该表中,你会 插入一个新行。 1559 01:14:02,920 --> 01:14:04,205 >> 这可能将 有用户的ID。 1560 01:14:04,205 --> 01:14:05,840 它可能将不得不 股票的名称。 1561 01:14:05,840 --> 01:14:08,760 它可能将不得不 一时间,他们做到了。 1562 01:14:08,760 --> 01:14:11,500 在这种情况下,你就可能 要插入的价格。 1563 01:14:11,500 --> 01:14:13,960 因为对于一个历史,你不 关心目前的价格是什么。 1564 01:14:13,960 --> 01:14:17,140 你关心的价格是什么时候 他们买或卖的东西。 1565 01:14:17,140 --> 01:14:21,530 >> 所以它听起来像,落实购买 充分涉及多个不同 1566 01:14:21,530 --> 01:14:25,530 SQL查询,但说实话,不 这么多代码的整体。 1567 01:14:25,530 --> 01:14:26,330 确定。 1568 01:14:26,330 --> 01:14:28,840 而这需要历史的照顾。 1569 01:14:28,840 --> 01:14:30,450 >> 比方说,我们要 显示我们的历史。 1570 01:14:30,450 --> 01:14:31,670 我们谈到展示 我们的产品组合。 1571 01:14:31,670 --> 01:14:33,902 我们将如何展示我们的历史? 1572 01:14:33,902 --> 01:14:36,312 >> 观众:大概时间顺序。 1573 01:14:36,312 --> 01:14:37,920 >> JASON HIRSCHHORN:据推测 按时间顺序 - 1574 01:14:37,920 --> 01:14:39,400 你觉得什么疑问我们会使用? 1575 01:14:39,400 --> 01:14:40,675 >> 听众:一个选择。 1576 01:14:40,675 --> 01:14:41,840 >> JASON HIRSCHHORN:一个选择 - 1577 01:14:41,840 --> 01:14:46,590 选择也许所有从该表中的行 相匹配的用户ID,然后 1578 01:14:46,590 --> 01:14:49,510 显示它们按时间顺序, 听起来不错。 1579 01:14:49,510 --> 01:14:52,590 我们需要编写代码来 通过列表进行排序? 1580 01:14:52,590 --> 01:14:55,084 >> 观众:没有,因为你告诉 我们有一个上升 1581 01:14:55,084 --> 01:14:57,320 和降序的事情。 1582 01:14:57,320 --> 01:14:58,230 >> JASON HIRSCHHORN:事? 1583 01:14:58,230 --> 01:14:59,190 >> 观众:是啊。 1584 01:14:59,190 --> 01:15:01,270 >> JASON HIRSCHHORN:是啊。 1585 01:15:01,270 --> 01:15:09,300 好了,不要在代码中转向我, 手动排序,通过你的查询, 1586 01:15:09,300 --> 01:15:09,820 对它们进行排序。 1587 01:15:09,820 --> 01:15:12,480 已经给该代码。 1588 01:15:12,480 --> 01:15:15,310 你可以写一个Select查询 进行排序的东西。 1589 01:15:15,310 --> 01:15:18,900 他们事先进行排序和 然后打印出来。 1590 01:15:18,900 --> 01:15:22,070 它使这么多情理之中的事 这种方式,比其他方式。 1591 01:15:22,070 --> 01:15:22,375 是。 1592 01:15:22,375 --> 01:15:23,925 >> 观众:我们是否需要 事先对它们进行排序? 1593 01:15:23,925 --> 01:15:25,976 这是否意味着你排序 他们在数据库中? 1594 01:15:25,976 --> 01:15:30,510 >> JASON HIRSCHHORN:SELECT查询 他们返回到您排序。 1595 01:15:30,510 --> 01:15:34,990 这样做,而不是仅仅让他们 返回到您在随机顺序 1596 01:15:34,990 --> 01:15:36,150 然后自己对它们进行排序。 1597 01:15:36,150 --> 01:15:36,405 是啊。 1598 01:15:36,405 --> 01:15:39,925 >> 观众:有没有一种方法来保持它 分类在数据库本身,使 1599 01:15:39,925 --> 01:15:41,355 不必进行排序 它的每一次你 - 1600 01:15:41,355 --> 01:15:43,065 >> 观众:你能否将它插入排序的? 1601 01:15:43,065 --> 01:15:45,740 >> JASON HIRSCHHORN:问题 - 1602 01:15:45,740 --> 01:15:49,796 这很重要的事情 分类在数据库中? 1603 01:15:49,796 --> 01:15:50,700 >> 观众:号 1604 01:15:50,700 --> 01:15:52,240 >> JASON HIRSCHHORN:嗯, 它们进行排序。 1605 01:15:52,240 --> 01:15:53,100 他们是按时间顺序排序。 1606 01:15:53,100 --> 01:15:55,060 但是,让我们假定事物进行排序 1607 01:15:55,060 --> 01:15:57,640 按时间顺序,从上到下。 1608 01:15:57,640 --> 01:15:58,930 我们有一个谷歌的形式。 1609 01:15:58,930 --> 01:16:01,400 每当有人回应我们的谷歌 形成的,它只是被放在 1610 01:16:01,400 --> 01:16:02,480 该表的底部。 1611 01:16:02,480 --> 01:16:07,318 这有什么关系,事情 排序不按时间顺序? 1612 01:16:07,318 --> 01:16:11,290 >> 观众:如果不是按时间顺序, 不要你有充分的时间来排序呢 1613 01:16:11,290 --> 01:16:12,920 你把信息了。 1614 01:16:12,920 --> 01:16:16,730 但是,如果它已经排序,可以吗 不必做额外的 1615 01:16:16,730 --> 01:16:17,570 函数调用? 1616 01:16:17,570 --> 01:16:20,690 >> JASON HIRSCHHORN:所以这是 实际上是一个很好的点。 1617 01:16:20,690 --> 01:16:23,690 我们作为程序员, 它可能无关紧要。 1618 01:16:23,690 --> 01:16:26,190 而我们可能希望找到一个数据库 不理清头绪 1619 01:16:26,190 --> 01:16:26,900 按时间顺序。 1620 01:16:26,900 --> 01:16:30,100 或者设置我们的数据库,所以它保持 东西整理按用户ID。 1621 01:16:30,100 --> 01:16:34,060 >> 所以这种方式,比方说,我们有 1,000用户ID。 1622 01:16:34,060 --> 01:16:36,690 或Facebook,我们拥有数百万 的用户ID。 1623 01:16:36,690 --> 01:16:39,560 我们不希望我们的表只是 随机或我们的数据库是随机的。 1624 01:16:39,560 --> 01:16:41,630 这将是很好,如果所有的 用户ID进行排序。 1625 01:16:41,630 --> 01:16:46,020 这样的话,我们可以运行的二进制搜索 在我们的表,然后只要找到 1626 01:16:46,020 --> 01:16:47,050 具体块。 1627 01:16:47,050 --> 01:16:50,640 >> 所以,是的,这取决于 - 如果我们扩大规模, 我们可能希望找到一个数据库 1628 01:16:50,640 --> 01:16:53,370 即把每一件事情整理在不同的 方式,使这些查询 1629 01:16:53,370 --> 01:16:54,140 将需要更少的时间。 1630 01:16:54,140 --> 01:16:56,820 而我们没有经过我们 在每一个单列整个数据库 1631 01:16:56,820 --> 01:16:58,260 给定表。 1632 01:16:58,260 --> 01:17:01,640 但水平在我们正在努力,我们 不必担心保持 1633 01:17:01,640 --> 01:17:02,270 东西整理。 1634 01:17:02,270 --> 01:17:06,100 我们可以假设,所花费的时间 该查询运行将是 1635 01:17:06,100 --> 01:17:08,910 可以忽略不计,因为什么 我们正在处理。 1636 01:17:08,910 --> 01:17:13,550 但是,是的,伟大的想法 - 因为我们扩大规模, 它可能是有意义的设计我们 1637 01:17:13,550 --> 01:17:15,390 数据库在一个有点不同的方式。 1638 01:17:15,390 --> 01:17:18,520 >> 最后一个数据库设计的东西我想 提为好,因为你会 1639 01:17:18,520 --> 01:17:22,660 进行分级,或得分相当,上 数据库的设计。 1640 01:17:22,660 --> 01:17:24,160 我们谈到了这一点。 1641 01:17:24,160 --> 01:17:27,490 现金是唯一的每个用户。 1642 01:17:27,490 --> 01:17:30,820 所以,你有一个表叫了现金 有他们的用户ID和金额 1643 01:17:30,820 --> 01:17:33,370 现金,然后一个名为表 用户有自己的用户 1644 01:17:33,370 --> 01:17:34,810 ID和他们的用户名。 1645 01:17:34,810 --> 01:17:37,390 >> 这些表映射到每个 其它1至1。 1646 01:17:37,390 --> 01:17:39,520 它很可能是有道理的, 他们是一个表。 1647 01:17:39,520 --> 01:17:42,750 1648 01:17:42,750 --> 01:17:44,830 因此,让我们假设你有一个用户 表跟踪 1649 01:17:44,830 --> 01:17:46,220 用户名和现金。 1650 01:17:46,220 --> 01:17:49,960 您现在有,有一个表 股票的个人拥有。 1651 01:17:49,960 --> 01:17:52,130 >> 和一个人可能拥有 以上的股票了。 1652 01:17:52,130 --> 01:17:54,900 所以,这些不映射到 相互一至1。 1653 01:17:54,900 --> 01:18:00,140 这是没有意义的有一个巨大的 表中有30个的记录 1654 01:18:00,140 --> 01:18:02,960 所有重复的用户名,即所有 重复输入密码,所有的 1655 01:18:02,960 --> 01:18:04,680 重复了一些现金。 1656 01:18:04,680 --> 01:18:08,360 但每个人都有可能是不同的股票 名称或不同的股票价格。 1657 01:18:08,360 --> 01:18:11,310 >> 这是没有意义的有 许多大型记录。 1658 01:18:11,310 --> 01:18:14,880 是聪明的,当你创建这些有关 数据库,所以,你是不是在做 1659 01:18:14,880 --> 01:18:20,050 一些愚蠢的那样,重复 很多不必要的信息。 1660 01:18:20,050 --> 01:18:20,570 >> 确定。 1661 01:18:20,570 --> 01:18:22,570 我们有两分钟时间。 1662 01:18:22,570 --> 01:18:26,580 外面的人很高兴能够加入 我们甚至可能,大概, 1663 01:18:26,580 --> 01:18:27,650 开始他们自己的类。 1664 01:18:27,650 --> 01:18:30,110 没有任何人有任何疑问, 之前,我们完成了? 1665 01:18:30,110 --> 01:18:35,520 1666 01:18:35,520 --> 01:18:38,620 >> OK,这的确是一个旋风 通过一切。 1667 01:18:38,620 --> 01:18:43,510 我很抱歉,这不得不如此快 而且,我们不能因为动手 1668 01:18:43,510 --> 01:18:46,640 这个星期我会一直 喜欢过。 1669 01:18:46,640 --> 01:18:50,610 但如果你有任何问题, 我们走过去任何事或任何东西 1670 01:18:50,610 --> 01:18:52,090 这个问题的设置 - 1671 01:18:52,090 --> 01:18:54,900 假设你已经读过它,并把 在一个善意的努力 - 1672 01:18:54,900 --> 01:18:57,920 请随时给我发电子邮件或与我联系。 1673 01:18:57,920 --> 01:19:00,960 我很乐意工作,通过 与您或回答您的任何代码 1674 01:19:00,960 --> 01:19:02,330 问题,你有。 1675 01:19:02,330 --> 01:19:06,160 >> 请记住,本周,很多 你的时间会花在学习 1676 01:19:06,160 --> 01:19:10,730 新的语法,并试图了解 如何编写SQL查询或PHP 1677 01:19:10,730 --> 01:19:14,280 功能或处理 一个MVC框架。 1678 01:19:14,280 --> 01:19:17,290 很多这一周可能是你的时间 不会试图找出该 1679 01:19:17,290 --> 01:19:19,380 疯狂的逻辑,我们是 要求你这样做。 1680 01:19:19,380 --> 01:19:23,820 很多它我们刚刚走过去的是 相对简单。 1681 01:19:23,820 --> 01:19:25,790 >> 因此,这并不意味着等待 直到最后一分钟。 1682 01:19:25,790 --> 01:19:29,710 但它确实意味着调整你如何做你的 相应的工作,以确保 1683 01:19:29,710 --> 01:19:30,970 你的理解和 学习的语法。 1684 01:19:30,970 --> 01:19:33,640 所以,你没有,突然,不知 你想到底该怎么做, 1685 01:19:33,640 --> 01:19:37,200 但不知道如何 正是写。 1686 01:19:37,200 --> 01:19:38,450 好吧,我会看到你下周。 1687 01:19:38,450 --> 01:19:40,438