Learning PHP, MySQL & JavaScript, 6th Edition Robin Nixon - Get instant access to the full ebook content
Learning PHP, MySQL & JavaScript, 6th Edition Robin Nixon - Get instant access to the full ebook content
com
https://textbookfull.com/product/learning-php-mysql-
javascript-6th-edition-robin-nixon/
OR CLICK HERE
DOWLOAD EBOOK
https://textbookfull.com/product/learning-php-mysql-javascript-early-
release-6th-edition-robin-nixon/
textbookfull.com
https://textbookfull.com/product/learning-php-mysql-javascript-with-
jquery-css-html5-5th-edition-robin-nixon/
textbookfull.com
https://textbookfull.com/product/biota-grow-2c-gather-2c-cook-loucas/
textbookfull.com
https://textbookfull.com/product/learn-php-8-using-mysql-javascript-
css3-and-html5-second-edition-steve-prettyman/
textbookfull.com
PHP and MySQL for Dynamic Web Sites Fifth Edition Ullman
https://textbookfull.com/product/php-and-mysql-for-dynamic-web-sites-
fifth-edition-ullman/
textbookfull.com
https://textbookfull.com/product/html5-20-lessons-to-successful-web-
development-1st-edition-robin-nixon/
textbookfull.com
https://textbookfull.com/product/php-and-mysql-web-development-5th-
edition-developer-s-library-luke-welling/
textbookfull.com
https://textbookfull.com/product/beginning-php-and-mysql-from-novice-
to-professional-5th-edition-frank-m-kromann/
textbookfull.com
https://textbookfull.com/product/learning-javascript-3rd-edition-
ethan-brown/
textbookfull.com
Learning PHP, MySQL &
JavaScript
SIXTH EDITION
With Early Release ebooks, you get books in their earliest form—
the author’s raw and unedited content as they write—so you can
take advantage of these technologies long before the official
release of these titles.
Robin Nixon
Learning PHP, MySQL & JavaScript
by Robin Nixon
Copyright © 2021 Robin Nixon. All rights reserved.
Printed in the United States of America.
Published by O’Reilly Media, Inc., 1005 Gravenstein Highway North,
Sebastopol, CA 95472.
O’Reilly books may be purchased for educational, business, or sales
promotional use. Online editions are also available for most titles
(http://oreilly.com). For more information, contact our
corporate/institutional sales department: 800-998-9938 or
corporate@oreilly.com.
Copyeditor: TK
Proofreader: TK
Indexer: TK
Audience
This book is for people who wish to learn how to create effective and
dynamic websites. This may include webmasters or graphic
designers who are already creating static websites but wish to take
their skills to the next level, as well as high school and college
students, recent graduates, and self-taught individuals.
In fact, anyone ready to learn the fundamentals behind responsive
web design will obtain a thorough grounding in the core
technologies of PHP, MySQL, JavaScript, CSS, and HTML5, and you’ll
learn the basics of the React library and React Native Framework,
too.
Assumptions This Book Makes
This book assumes that you have a basic understanding of HTML
and can at least put together a simple, static website, but does not
assume that you have any prior knowledge of PHP, MySQL,
JavaScript, CSS, or HTML5—although if you do, your progress
through the book will be even quicker.
Supporting Books
Once you have learned to develop using PHP, MySQL, JavaScript,
CSS, and HTML5, you will be ready to take your skills to the next
level using the following O’Reilly reference books:
Dynamic HTML: The Definitive Reference by Danny
Goodman
PHP in a Nutshell by Paul Hudson
MySQL in a Nutshell by Russell Dyer
JavaScript: The Definitive Guide by David Flanagan
CSS: The Definitive Guide by Eric A. Meyer and Estelle Weyl
HTML5: The Missing Manual by Matthew MacDonald
Italic
Indicates new terms, URLs, email addresses, filenames, file
extensions, pathnames, directories, and Unix utilities. Also used
for database, table, and column names.
Constant width
NOTE
This element signifies a tip, suggestion, or general note.
WARNING
This element indicates a warning or caution.
NOTE
For more than 40 years, O’Reilly Media has provided technology and
business training, knowledge, and insight to help companies succeed.
How to Contact Us
Please address comments and questions concerning this book to the
publisher:
Sebastopol, CA 95472
We have a web page for this book, where we list errata, examples,
and any additional information. You can access this page at
[[[ERRATA URL GOES HERE]]].
To comment or ask technical questions about this book, send email
to bookquestions@oreilly.com.
For news and more information about our books and courses, see
our website at http://www.oreilly.com.
Find us on Facebook: http://facebook.com/oreilly
Follow us on Twitter: http://twitter.com/oreillymedia
Watch us on YouTube: http://www.youtube.com/oreillymedia
Acknowledgments
I would like to thank Senior Content Acquisitions Editor, Amanda
Quinn, Content Development Editor, Melissa Potter, and everyone
who worked so hard on this book, including ???, ??? & ??? for their
comprehensive technical reviews, ??? for overseeing production, ???
for copy editing, ??? for proofreading, ??? for creating the index,
Karen Montgomery for the original sugar glider front cover design,
??? for the latest book cover, my original editor, Andy Oram, for
overseeing the first five editions, and everyone else too numerous to
name who submitted errata and offered suggestions for this new
edition.
Chapter 1. Introduction to
Dynamic Web Content
NOTE
It is necessary to start using some acronyms more or less right away. I
have tried to clearly explain them before proceeding, but don’t worry
too much about what they stand for or what these names mean,
because the details will become clear as you read on.
Using PHP
With PHP, it’s a simple matter to embed dynamic activity in web
pages. When you give pages the .php extension, they have instant
access to the scripting language. From a developer’s point of view,
all you have to do is write code such as the following:
<?php
echo " Today is " . date("l") . ". ";
?>
The opening <?php tells the web server to allow the PHP program
to interpret all the following code up to the ?> tag. Outside of this
construct, everything is sent to the client as direct HTML. So, the
text Here's the latest news. is simply output to the browser;
within the PHP tags, the built-in date function displays the current
day of the week according to the server’s system time.
The final output of the two parts looks like this:
NOTE
If you intend to enter the PHP examples in this book into a program
editor to work along with me, you must remember to add <?php in
front and ?> after them to ensure that the PHP interpreter processes
them. To facilitate this, you may wish to prepare a file called
example.php with those tags in place.
Using PHP, you have unlimited control over your web server.
Whether you need to modify HTML on the fly, process a credit card,
add user details to a database, or fetch information from a third-
party website, you can do it all from within the same PHP files in
which the HTML itself resides.
Using MySQL
Of course, there’s not a lot of point to being able to change HTML
output dynamically unless you also have a means to track the
information users provide to your website as they use it. In the early
days of the web, many sites used “flat” text files to store data such
as usernames and passwords. But this approach could cause
problems if the file wasn’t correctly locked against corruption from
multiple simultaneous accesses. Also, a flat file can get only so big
before it becomes unwieldy to manage—not to mention the difficulty
of trying to merge files and perform complex searches in any kind of
reasonable time.
That’s where relational databases with structured querying become
essential. And MySQL, being free to use and installed on vast
numbers of internet web servers, rises superbly to the occasion. It is
a robust and exceptionally fast database management system that
uses English-like commands.
The highest level of MySQL structure is a database, within which you
can have one or more tables that contain your data. For example,
let’s suppose you are working on a table called users, within which
you have created columns for surname, firstname, and email,
and you now wish to add another user. One command that you
might use to do this is as follows:
Using JavaScript
The oldest of the three core technologies discussed in this book,
JavaScript, was created to enable scripting access to all the elements
of an HTML document. In other words, it provides a means for
dynamic user interaction such as checking email address validity in
input forms and displaying prompts such as “Did you really mean
that?” (although it cannot be relied upon for security, which should
always be performed on the web server).
Combined with CSS (see the following section), JavaScript is the
power behind dynamic web pages that change in front of your eyes
rather than when a new page is returned by the server.
However, JavaScript can also be tricky to use, due to some major
differences in the ways different browser designers have chosen to
implement it. This mainly came about when some manufacturers
tried to put additional functionality into their browsers at the
expense of compatibility with their rivals.
Thankfully, the developers have mostly now come to their senses
and have realized the need for full compatibility with one another, so
it is less necessary these days to have to optimize your code for
different browsers. However, there remain millions of users using
legacy browsers, and this will likely be the case for a good many
years to come. Luckily, there are solutions for the incompatibility
problems, and later in this book we’ll look at libraries and techniques
that enable you to safely ignore these differences.
For now, let’s take a look at how to use basic JavaScript, accepted
by all browsers:
<script type="text/javascript">
document.write("Today is " + Date() );
</script>
Using CSS
CSS is the crucial companion to HTML, ensuring that the HTML text
and embedded images are laid out consistently and in a manner
appropriate for the user’s screen. With the emergence of the CSS3
standard in recent years, CSS now offers a level of dynamic
interactivity previously supported only by JavaScript. For example,
not only can you style any HTML element to change its dimensions,
colors, borders, spacing, and so on, but now you can also add
animated transitions and transformations to your web pages, using
only a few lines of CSS.
Using CSS can be as simple as inserting a few rules between
<style> and </style> tags in the head of a web page, like this:
<style>
p {
text-align:justify;
font-family:Helvetica;
}
</style>
These rules change the default text alignment of the <p> tag so that
paragraphs contained in it are fully justified and use the Helvetica
font.
As you’ll learn in Chapter 19 , there are many different ways you can
lay out CSS rules, and you can also include them directly within tags
or save a set of rules to an external file to be loaded in separately.
This flexibility not only lets you style your HTML precisely, but can
also (for example) provide built-in hover functionality to animate
objects as the mouse passes over them. You will also learn how to
access all of an element’s CSS properties from JavaScript as well as
HTML.
Militärisch erhielt die Lage zur Zeit der zweiten Kanzlerkrisis und
der ersten Wochen der Hertlingschen Kanzlerschaft ihr Gepräge
durch die von uns und unserem österreichisch-ungarischen
Bundesgenossen vereint durchgeführte glänzende Offensive an der
italienischen Front. Am 24. Oktober hatte der Angriff an der
Isonzofront begonnen. In wenigen Tagen waren den Italienern
wieder alle Vorteile entrissen, die sie in zweiundeinhalb Kriegsjahren
und in den elf blutigen Isonzoschlachten errungen hatten. Es folgte
der Einbruch unserer Truppen in die italienische Ebene. Am 30.
Oktober fiel Udine, am 5. November wurde der Tagliamento
überschritten. Wenige Tage später standen unsere Truppen am
Piave. Die italienische Armee war auf das schwerste erschüttert und
durch große Verluste an Menschen und Material geschwächt. Italien
mußte sich an seine Verbündeten um Hilfe wenden.
Im Westen boten Engländer, Franzosen und ihre Hilfsvölker alle
Kraft auf, um den Krieg vor dem Winter zur Entscheidung zu
bringen. Aber die gewaltigen Vorstöße in Flandern, am Chemin des
Dames und vor Verdun kamen über örtliche Erfolge nicht hinaus und
liefen sich im Laufe des November tot. Die nicht unwesentlichen
Vorteile, die gegen Ende November die Engländer in einem
überraschend angesetzten, mit zahlreichen Tanks arbeitenden Angriff
bei Cambrai errangen, wurden ihnen durch einen mächtigen
deutschen Gegenstoß wieder entrissen. Als der Winter kam, hatte
sich überall im Westen der gewaltige Anprall der feindlichen Massen
und Maschinen unter den schwersten Verlusten an dem elastischen
System unserer Verteidigung gebrochen. Wie unsere Oberste
Heeresleitung die Lage im Westen beurteilte, ergab sich für mich aus
einer Äußerung, die General Ludendorff, als ich im Laufe der zweiten
Novemberhälfte das Große Hauptquartier besuchte, mir gegenüber
tat. Er bezeichnete es als möglich, daß der Augenblick kommen
werde, wo wir an der Westfront aus der Verteidigung zum Angriff
übergehen und dadurch vielleicht die Entscheidung des Krieges
herbeiführen könnten.
In Frankreich äußerte sich die Erregung über die italienische
Niederlage und die Erfolglosigkeit der gewaltigen eigenen
Anstrengungen und Opfer in einer neuen Ministerkrisis, die an Stelle
des Herrn Painlevé Herrn Clemenceau ans Ruder brachte. Bei der
bekannten Stellung Clemenceaus zu den Kriegs- und Friedensfragen
mußte man in diesem Wechsel den Ausdruck des zum Äußersten
entschlossenen Willens der Franzosen sehen, den Krieg ohne
Rücksicht auf Opfer und Gefahren mit allen Mitteln bis zum
Äußersten durchzukämpfen.
Ausgesprochen ungünstig war die Entwicklung der Dinge bei
unserem türkischen Bundesgenossen, namentlich an der
sogenannten „Sinaifront“. Noch im Frühjahr 1917 hatten die Türken
starke englische Angriffe bei Gaza, an der Grenze zwischen der
Halbinsel Sinai und Palästina, siegreich zurückgeschlagen. Jetzt, mit
Beginn der günstigen Jahreszeit, griffen die Engländer nach großen
Vorbereitungen erneut an. Schon Anfang November mußte die
Sinaifront zurückgenommen werden. Die Engländer drängten scharf
nach. Am 10. Dezember 1917 besetzten sie das von den Türken
aufgegebene Jerusalem.
Das wichtigste Ereignis jener Zeit spielte sich jedoch in Rußland
ab. Dort war in den ersten Novembertagen die zweite Revolution,
die Revolution der Bolschewisten, ausgebrochen. Am 8. November
war Kerenski gestürzt und geflohen; der Kongreß der Arbeiter- und
Soldatenräte konnte von Petersburg aus verkünden, daß er alle
Gewalt in seine Hand genommen habe. Am Tage darauf
veröffentlichte die neue Regierung ihr Programm, an dessen Spitze
die sofortige Herbeiführung eines Waffenstillstands an allen Fronten
und der Abschluß eines „demokratischen Friedens“ stand. Die
folgenden Wochen waren mit inneren Kämpfen ausgefüllt, in denen
sich die Bolschewikiregierung mit Lenin als Präsident und Trotzki als
Volkskommissar für die auswärtigen Angelegenheiten behauptete.
Am 23. November teilte Trotzki den russischen Botschaftern
telegraphisch, gleichzeitig mit der Konstituierung des „Rates der
Volksbeauftragten“ als der neuen Regierung, den Vorschlag mit, daß
alle kriegführenden Völker sofort einen Waffenstillstand schließen
und in Friedensverhandlungen eintreten möchten; als Grundlage für
die Verhandlungen wurde bezeichnet die Unabhängigkeit der Völker
und ihr Recht, ihre Entwicklung selbst zu bestimmen, sowie der
Ausschluß von Annexionen und Kontributionen. An demselben Tage
begann die neue russische Regierung die Geheimverträge zwischen
Rußland und seinen Verbündeten zu veröffentlichen zugleich mit der
Erklärung, daß diese Verträge für das russische Volk unverbindlich
seien. Das war ein deutlicher Beweis der Entschlossenheit der neuen
russischen Regierung, den Weg zum Frieden nötigenfalls ohne
Rücksicht auf die Ententegenossen zu gehen.
Am 29. November konnte Graf Hertling in seiner Antrittsrede dem
Reichstag mitteilen:
„Die russische Regierung hat gestern von Zarskoje-Selo aus ein
von dem Volkskommissar für auswärtige Angelegenheiten, Herrn
Trotzki, und dem Vorsitzenden des Rates der Volkskommissare,
Herrn Lenin, unterzeichnetes Funkentelegramm an die Regierungen
und Völker der kriegführenden Länder gerichtet, worin sie
vorschlägt, zu einem nahen Termin in Verhandlungen über einen
Waffenstillstand und einen allgemeinen Frieden einzutreten. Ich
stehe nicht an zu erklären, daß in den bisher bekannt gewordenen
Vorschlägen der russischen Regierung diskutable Grundlagen für die
Aufnahme von Verhandlungen erblickt werden können, und daß ich
bereit bin, in solche einzutreten, sobald die russische Regierung
hierzu bevollmächtigte Vertreter entsendet. Ich hoffe und wünsche,
daß diese Bestrebungen bald festere Gestalt annehmen und uns den
Frieden bringen werden.“
Fußnoten:
[1] Siehe oben S. 65ff.
[2] Siehe die Mitteilungen von Wolffs Telegraphischem Bureau
vom 13. und 17. Dezember 1917. — Im N a c h t r a g komme ich
eingehender auf diese Angelegenheit zurück.
Der Ost-Friede
In jenen Novembertagen des Jahres 1917, in denen die Frieden
heischenden Funksprüche der neuen Männer Rußlands in die Welt
hinausgingen, schien sich endlich die Hoffnung zu erfüllen, die acht
Monate zuvor mit dem Ausbruch der russischen Revolution
aufgedämmert war: die Hoffnung auf das Zurückebben der blutigen
Hochflut des Krieges. Damals war diese Hoffnung gescheitert. Das
Rußland der Miljukow und Kerenski vermochte sich ebenso wenig
von den Ideen des panslawistischen Imperialismus zu trennen, wie
sich von der Furcht vor dem deutschen Imperialismus zu befreien
und sich aus der Gebundenheit an die Entente zu lösen. Der Krieg
nach Osten ging weiter, und der Eintritt der Vereinigten Staaten in
den Krieg, der kurz auf den Ausbruch der russischen Revolution
folgte, kündigte die größte Ausdehnung und höchste Steigerung des
Völkerringens an.
Jetzt aber sprachen alle Zeichen dafür, daß die Rückbildung des
Krieges Ernst werden solle, daß zum erstenmal eine der ganz großen
Mächte, dazu die Macht, die damals im Juli 1914 die Brandfackel in
das Haus der Völker geschleudert hatte, die Waffen niederlegen
werde. Alle Nachrichten von der russischen Front und aus dem
Inneren Rußlands stimmten dahin überein, daß des russischen
Volkes Kraft und Wille zum Krieg endgültig gebrochen sei, und daß
nur eine Regierung sich werde halten und durchsetzen können, die
dem russischen Volke den Frieden bringe.
Endlich wurde die Aussicht auf die Sprengung des feindlichen
Ringes, die Aussicht auf die Befreiung von dem ungeheuren
russischen Druck und auf die Beendigung des „Zweifrontenkrieges“
in greifbare Nähe gerückt. Und mehr als das! Nach dem furchtbaren
Schlage, den unsere und unseres österreichisch-ungarischen
Verbündeten Herbstoffensive dem italienischen Heere in Venetien
versetzt hatte, war für uns auch an der Südfront die seit zweieinhalb
Jahren drohende Gefahr abgewendet und freiere Hand gewonnen.
Zum erstenmal seit Kriegsausbruch zeigte sich für uns die
Möglichkeit, unsere Kraft im wesentlichen auf dem für das Schicksal
des Krieges entscheidenden westlichen Kriegsschauplatz zu
konzentrieren, wo uns fast die gesamte Macht der Franzosen und
Briten mit ihren Hilfsvölkern gegenüberstand und wo wir das
Eingreifen der Amerikaner zu erwarten hatten. Dazu versprach der
Friede im Osten endgültig die Hungerblockade zu brechen, die
immer schwerer auf unserem Volke lastete und unsere Kraft zum
Kämpfen und Durchhalten empfindlich zu schwächen drohte. Diese
Möglichkeiten mußten nicht nur unsere Aussichten für einen
militärischen Endkampf erheblich verbessern; sie erschienen auch
geeignet, unsere westlichen Feinde zum Nachdenken zu veranlassen
und ihnen das Betreten des Weges einer billigen Verständigung
nahezulegen.
Der gute Geist unseres Volkes und der Menschheit schien den Weg
zu weisen, der aus dem völkerzermalmenden Elend des Krieges
herausführte.
Our website is not just a platform for buying books, but a bridge
connecting readers to the timeless values of culture and wisdom. With
an elegant, user-friendly interface and an intelligent search system,
we are committed to providing a quick and convenient shopping
experience. Additionally, our special promotions and home delivery
services ensure that you save time and fully enjoy the joy of reading.
textbookfull.com