Skip to main content

Posts

Showing posts from September, 2010

Drupal : The Ubercart 2.x Order Object Variables List

Since the Ubercart documentation is not what you really call "existant"... This is the object containing the order attributes. So if you see the variable $order in example code, this is it: stdClass Object( [order_id] => %%4%% [uid] => %%17%% [order_status] => %%completed%% [order_total] => %%20%% [product_count] => %%1%% [primary_email] => %%example@example.com%% [delivery_first_name] => [delivery_last_name] => [delivery_phone] => [delivery_company] => [delivery_street1] => [delivery_street2] => [delivery_city] => [delivery_zone] => 0 [delivery_postal_code] => [delivery_country] => %%300%% [billing_first_name] => %%Foo%% [billing_last_name] => %%Bar%% [billing_phone] => %%123456789%% [billing_company] => %%Example Co.%% [billing_street1] => %%Avenue Street%% [billing_street2] => [billing_city] => %%City%% [billing_zone] => %%CityCode%% [billing_…

Apache - .htaccess override

The .htaccess file is the file mostly known to work with Apache Web Server in order to override some apache.conf settings with the settings specified in the file. Apache is a very flexible web server and tries to be ready for every administrator who wants to modify its functionality.

After saying that, you can disable this override, by changing the following settings in apache.conf(ex. Debian-based distributions) or httpd.conf(ex. RedHat-based distributions, CentOS). If you want to enable/disable this override use
DisableEnableAllowOverride None AccessFileName .htaccessAllowOverride All AccessFileName .htaccess

Div VS Span - HTML Tags

Αν παρατηρήσετε τον κώδικα που κρύβεται πίσω από τα σύγχρονα site, θα παρατηρήσετε πως σε πολλά σημεία υπάρχουν <div...> και <span...> html tags. Αντίθετα, τα παλαιότερα <font...>, <p...>, <basefont...> κτλ τείνουν να εξαφανίζονται, αν αυτό δεν έχει ήδη συμβεί. Ποια όμως η διαφορά μεταξύ των δύο;

        Από τη στιγμή που εισήχθησαν τα φύλλα CSS στην HTML, οι προγραμματιστές είχαν τη δυνατότητα να χρησιμοποιήσουν κώδικα CSS για τη διαμόρφωση των διαφόρων στοιχείων της σελίδας απλά χρησιμοποιώντας την ιδιότητα style="..." του εκάστοτε tag.

        Έτσι, το <p align="center"> έγινε <div style="text-align:center;">, ενώ το <font color="#FFC354" size="+1"> αντικαταστάθηκε από <span style="color:#FFC354;font-size:large;">. Θα μπορούσαμε όμως κάλλιστα να γράψουμε και <div style="color:#FFC354;font-size:large;">.

        Η διαφορά είναι ότι, βάσει προεπιλογής…

Σύνδεση σε βάση MySQL μέσω της PHP

Η PHP υποστηρίζει σύνδεση σε βάση MySQL χωρίς να χρειάζεται να εγκαταστήσουμε κάποιο επιπλέον πακέτο. Το μόνο που χρειαζόμαστε λοιπόν είναι τις κατάλληλες συναρτήσεις και τις κατάλληλες παραμέτρους.
Όσον αφορά στις παραμέτρους θα χρειαστούμε:Τη διεύθυνση του server όπου εκτελείται η mysql:
Συνήθως η τιμή αυτή είναι localhost. Σε περίπτωση όμως που η MySQL βρίσκεται σε διαφορετικό υπολογιστή από αυτόν στον οποίο εκτελείται ο WebServer ή εκτελείται σε διαφορετική θύρα τότε η τιμή θα είναι WebServerAddress:MySQLPort.Το username του χρήστη της MySQL:
Συνήθως, για κάθε site δημιουργούμε έναν διαφορετικό χρήστη mysql και ποτέ(!) δε χρησιμοποιούμε τον χρήστη root. Ο χρήστης που θα επιλέξουμε, φροντίζουμε να έχει τα κατάλληλα δικαιώματα για SELECT,INSERT,UPDATE ή DELETE(αν χρειάζονται όλα αυτά)Τον κωδικό του χρήστης της MySQLΤο όνομα της βάσης:
Το όνομα της βάσης στην οποία θέλουμε να συνδεθούμε. Οφείλουμε να έχει ο χρήστης δικαιώματα προσπέλασης(δηλ. SELECT τουλάχιστον) στα περιεχόμενα της βάσης…

Λίστα με τις περιοχές της Ελλάδος

Ανάλογα το project που έχουμε αναλάβει, μπορεί να μας ζητηθεί να φτιάξουμε μία λίστα με όλες τις περιοχές της Ελλάδας ανά περιφέρεια. Δεν είναι δύσκολο να βρούμε τα ονόματα των περιοχών αυτών από το internet αλλά το να τις κάνουμε <select...&rt; σίγουρα έχει τον κόπο του. Γι' αυτό και σας το παρουσιάζω παρακάτω. Απλώς αντιγράψτε το...
<select class="field" id="r_location" name="r_location">
<option value="" disabled class="bold">Ανατολικής Μακεδονίας & Θράκης</option>
<option value="Δράμας">-->Δράμα</option>
<option value="Έβρου">-->Έβρος</option>
<option value="Καβάλας">-->Καβάλα</option>
<option value="Ξάνθης">-->Ξάνθη</option>
<option value="Ροδόπης">-->Ροδόπη</option>
<option disabled class="bold">Αττικής</option>
<option value="Αττική">-->Αττικ…

Javascript και πολυδιάστατοι πίνακες

Αν προσπαθήσετε να βρείτε τρόπο να ορίσετε έναν πολυδιάσταστο πίνακα στη γλώσσα προγραμματισμού Javascript, η αλήθεια είναι πως θα απογοητευτείτε γιατί κάτι τέτοιο δεν υποστηρίζεται. Ψάχνοντας όμως στο internet για λύσεις του συγκεκριμένου προβλήματος, βρήκαμε αυτό το site. Μπορεί να μην υπάρχει τρόπος να ορίσουμε πολυδιάστατους πίνακες, αλλά τίποτα δε μας εμποδίζει να ορίσουμε πίνακες μέσα σε πίνακες. Έτσι, κώδικας όπως ο παρακάτω έχει νόημα:
<script language="JavaScript">
<!--
var x = new Array(new Array(1,2,3),new Array('A','B','C'),new Array('x','y','z'));
-->
</script>


και μάλιστα η τιμή x[1][2] θα επιστρέψει το C.

Σημείωση: Ας μην ξεχνάμε πως οι πίνακες ξεκινούν από το 0 οπότε και x[1] αφορά στον 2ο πίνακα, ενώ το x[1][2] στο 3ο στοιχείο του 2ου πίνακα.

Σαν βελτίωση της προηγούμενης μεθόδου, μπορούμε να κατασκευάσουμε μία function για δημιουργία "πολυδιάστατου" πίνακα με τις όποιες διαστάσεις επιθυμού…

Δημιουργία εφαρμογών για όλα τα λειτουργικά συστήματα

Παλαιότερα, οι εφαρμογές που φτιάχνονταν είχαν ως σκοπό το να εκτελούνται στα συστήματα που φτιάχνονταν. Έτσι οι καταλήξεις .exe αφορούσαν εκτελέσιμα των windows, τα .sh και .run εκτελέσιμα των λειτουργικών linux κτλ. Αυτό συμβαίνει ακόμη και σήμερα. Όμως μία διαδικτυακή εφαρμογή πρέπει να μπορεί να εκτελεστεί σε όλα τα λειτουργικά συστήματα. Είτε ο server εκτελεί λειτουργικό windows, είτε λειτουργικό linux. Πώς όμως καταλαβαίνει η PHP τη διαφορά;



Αν σε ένα αρχείο PHP γράψουμε τον παρακάτω κώδικα και το εκτελέσουμε θα μας εμφανίσει το λειτουργικό σύστημα που χρησιμοποιείται:

echo PHP_OS;



Για παράδειγμα, αν εκτελούμε λογισμικό windows XP θα επιστραφεί η τιμή "WINNT". Όμως πώς μπορούμε να ξέρουμε όλα τα ονόματα που είχαν οι προηγούμενες εκδόσεις ή οι μεταγενέστερες εκδόσεις των Windows?



Η λογική είναι απλή! Τα Windows είτε 95, είτε 98, είτε 2000, είτε XP, είτε Vista, είτε 7 παραμένουν πάντοτε Windows και πιο γνωστά ως "WIN32". Αρκεί λοιπόν να ψάξουμε μέσα στη μεταβλητή P…

Φτιάχνοντας πολυγλωσσικές διαδικτυακές εφαρμογές

Είναι σημαντικό προνόμιο για μια εφαρμογή το να μπορεί να υποστηρίζει πολλές γλώσσες. Πώς όμως μπορεί να γίνει αυτό;

Είναι πολύ σημαντικό να γίνει κατανοητό πως ως προγραμματιστές που σχεδιάζουμε και προγραμματίζουμε μία εφαρμογή, είμαστε απόλυτα ελεύθεροι να επιλέξουμε όποιον τρόπο θεωρούμε εμείς καλό, ανεξάρτητα του αν είναι ο πιο διαδεδομένος ή όχι. Έτσι, εδώ θα παρουσιάσουμε έναν τρόπο και ο καθένας μπορεί να τον χρησιμοποιήσει, να αναπτύξει τον δικό του ή να τον απορρίψει.

Η διάταξη που θα χρησιμοποιήσουμε θα είναι η παρακάτω:


O φάκελος el-GR αποφασίζουμε ότι θα αφορά την ελληνική μετάφραση, ενώ ο en-GB την αγγλική. Έτσι λοιπόν, κάθε γλώσσα θα έχει το δικό της μέρος ως υποφάκελο του φακέλου language.

Το αρχείο language.php θα μοιάζει με το παρακάτω:
<?php
$language=array(
//MAIN WINDOW
"title" => "Τίτλος",
"Undo" => "Αναίρεση",
"Redo" => "Επανάληψη",
"Link" => "Εισαγωγή Συνδέσμου",
&qu…

Combobox με τίτλο

Σε διάφορα site στο internet θα έχετε δει να έχουν ένα combobox(<select...>) που να έχει τίτλους και κατηγορίες σαν το παρακάτω:


Τίτλος 1
----------
Επιλογή 1
Επιλογή 2
Επιλογή 3
----------
Τίτλος 2
----------
Επιλογή 1
Επιλογή 2
Επιλογή 3
----------
Τίτλος 3
----------
Επιλογή 1
Επιλογή 2
Επιλογή 3


Πώς μπορεί όμως αλήθεια να γίνει αυτό;
Μία λύση είναι να ελέγξουμε αν υπάρχει multiline ιδιότητα στα combobox. Αυτό όμως δεν υπάρχει. Ούτε μπορεί να γίνει γράφοντας πχ "Τίτλος 1<br/>--------" σαν περιεχόμενο του <option...>.

Τι κάνουμε λοιπόν; Θα χρησιμοποιήσουμε τις ιδιότητες SELECTED και DISABLED του <select...> και συγκεκριμένα το παρακάτω κώδικα:

<select>
<option DISABLED SELECTED style="color:#000;">Τίτλος 1</option>
<option DISABLED>----------</option>
<option>Επιλογή 1</option>
<option>Επιλογή 2</option>
<option>Επιλογή 3</option>
<option DISABLED>----------</option>
<option DISABLED st…

Firebug

Αν συνηθίζετε να χρησιμοποιείτε JavaScript στους ιστοχώρους που δημιουργείτε τότε θα έχετε βρεθεί πολλές φορές σε καταστάσεις όπως το να πατάτε ένα κουμπί στο οποίο έχετε ορίσει το onclick event αλλά αυτό δε λειτουργεί. Ψάχνετε αρρωστημένα να βρείτε το γιατί αλλά δεν τα καταφέρνετε.

        Συνήθως το πρόγραμμα Internet Explorer(ο 6 τουλάχιστον), στις περιπτώσεις αυτές, βγάζει κάτι αριστερά ένα κίτρινο σήμα θαυμαστικού που λέει "Η σελίδα περιέχει σφάλματα". Αν κάνουμε κλικ σε αυτό το θαυμαστικό και μετά επιλέξουμε να δούμε περισσότερες πληροφορίες, εμφανίζονται τα javascript λάθη της σελίδας. Όμως, είναι κάπως δυσανάγνωστα...έως πολύ δυσανάγνωστα. Τι κάνουμε λοιπόν; Η λύση είναι Firefox και συγκεκριμένα η επέκταση Firebug.

        Το μικρό αυτό προγραμματάκι με το που ανιχνεύσει javascript error σε μια ιστοσελίδα, εμφανίζει κάτω-κάτω στην status bar, τον αριθμό των λαθών που βρήκε. Σημαντικό είναι επίσης ότι "σκανάρει" κάθε ενέργεια που κάνει ο χρήστης(πχ. cl…

Joomla - Κάνει ό,τι λέει;

Πολλές φορές έχουμε ακούσει να χρησιμοποιείται το joomla για την εύκολη κατασκευή ιστοχώρων ή γιατί έχει ωραία θέματα να διαλέξει ο χρήστης/διαχειριστής. Ισχύουν όμως αυτά; Το Joomla ως CMS κάνει πράγματι ό,τι λέει; Κι αν ναι, με τί κόστος;



Το Joomla είναι ένα CMS(Content Management System) με αρκετούς υποστηρικτές που το συντηρούν και το αναπτύσουν και με αρκετά plugins, ενώ ταυτόχρονα είναι πολύ ελεύθερο σε αυτά που δίνει ως επιλογές στον χρήστη. Κι εδώ ξεκινούν τα προβλήματά...



Ο χρήστης θέλει απλά πράγματα. Όσο λιγότερες επιλογές, όσο λιγότερα κουτάκια βλέπει, τόσο καλύτερα γι' αυτόν. Ο χρήστης θέλει να μπορεί να πραγματοποιεί αλλαγές αλλά δε θέλει να βλέπει συνέχεια το πόσα κουτάκια μπορεί να συμπληρώσει. Άλλωστε, όπως καταλαβαίνουμε αν προσπαθήσουμε να διαβάσουμε τον κώδικα του Joomla, δίνονται τόσες πολλές επιλογές γιατί ο κώδικας δεν είναι κατάλληλος για tweaking ή για οποιοδήποτε πείραγμα γενικότερα. Μπορούμε να πειράξουμε το configuration.php πολύ εύκολα(έχει και σχόλια κτ…

Joomla - Μεταφορά σε νέο host

Υπάρχουν στο internet πολλές οδηγίες που αφορούν το Joomla και πώς να το μεταφέρεις από τον ένα host στον άλλον.



Όπως κάθε πρόγραμμα που αποτελείται από αρχεία και βάση, χρειάζεται

1) να μεταφέρουμε όλα τα αρχεία από το ένα σύστημα στο άλλο και

2)να πάρουμε backup της βάσης δεδομένων, το οποίο θα εγκαταστήσουμε στο νέο σύστημα.



Άπαξ και τα κάνουμε αυτά, όλα δουλεύουν ρολόι! Συχνά, όμως, στις οδηγίες που προαναφέραμε, λένε να εγκαθιστούμε εκ νέου τα components. Η αλήθεια είναι πως αυτό δε χρειάζεται, αν και είναι κάπως περίπλοκη η διαδικασία για να το αποφύγουμε αυτό(αλλά σίγουρα όχι τόσο όσο η εκ νέου εγκατάσταση).



Συγκεκριμένα, μετά από μεταφορά του Joomla σε νέο host, διαπιστώθηκε πως η βάση λειτουργούσε κανονικά, όπως και το site (φαινομενικά). Μερικά όμως link συνέχιζαν να στέλνουν στον παλιό host. Το ίδιο συνέβαινε και με τις εικόνες, οι οποίες φορτώνονταν από τον προηγούμενο ιστοχώρο. Αλλά γιατί γίνεται αυτό; Στο internet δεν υπήρχε καμία τέτοια αναφορά.



To Joomla έχει ένα αρχείο conf…

CSS Design - Σχεδιάστε χωρίς <table...>

Σε προηγούμενη ανάρτηση αναφέρθηκε το πώς τα tags <div...> και <span...> μπορούν να αντικαταστήσουν σχεδόν κάθε html tag. Αν κοιτάξουμε μάλιστα στο Internet, θα βρούμε πολλά βιβλία που λένε πώς να φτιάχνουμε site χωρίς html πίνακες. Πώς γίνεται αυτό; Είναι στ' αλήθεια εφικτό;

Έστω ότι θέλουμε να φτιάξουμε το παρακάτω design για μια σελίδα:

Για να το δημιουργήσουμε με <table...> θα χρησιμοποιήσουμε τον παρακάτω κώδικα:

<table>
<tr><td colspan="2">ΚΕΦΑΛΙΔΑ</td></tr>
<tr><td>ΑΡΙΣΤΕΡΗ ΣΤΗΛΗ</td><td>ΠΕΡΙΕΧΟΜΕΝΟ</td></tr>
<tr><td colspan="2">ΥΠΟΣΕΛΙΔΟ</td></tr>
</table>

Όπως βλέπουμε λοιπόν, για να δημιουργήσουμε έναν πίνακα HTML χρειαζόμαστε τουλάχιστον 6 tags(3 τα table,tr και td και άλλα 3 που κλείνουν τα προηγούμενα).

Το παραπάνω παράδειγμα είναι απλό. Σκεφτείτε, όμως, πως στη sidebar συνήθως βάζουμε εργαλεία όπως κώδικα Javascript, Φόρμες για σύνδεση το…

Λίστα μεγεθών και γραμματοσειρών

Όπως κάναμε προηγουμένως με τα χρώματα και τις χώρες, έτσι και παρακάτω βρίσκεται ο κώδικας που παράγει μια λίστα με μεγέθη και μια λίστα με γραμματοσειρές.

Μεγέθη:
<select name="size" id="size" size="1">
<option value="xx-small" style="font-size:xx-small">1</option>
<option value="x-small" style="font-size:x-small">2</option>
<option value="small" style="font-size:small">3</option>
<option value="medium" style="font-size:medium">4</option>
<option value="large" style="font-size:large">5</option>
<option value="x-large" style="font-size:x-large">6</option>
<option value="xx-large" style="font-size:xx-large">7</option>
</select>
Γραμματοσειρές:
<select name="fonts" id="fonts" size="1" >
<option valu…

Query σε MySQL χρησιμοποιώντας PHP

Σε προηγούμενη ανάρτηση είδαμε πώς να πραγματοποιούμε σύνδεση με μία βάση δεδομένων MySQL μέσω της PHP και πώς να εκτελούμε scripts. Πώς όμως μπορούμε να χρησιμοποιήσουμε τα αποτελέσματα που επιστρέφονται από την εκτέλεση των εντολών;
Έστω ότι έχουμε έναν πίνακα με όνομα Users με τα παρακάτω πεδία:
Usersidnamesurname
Θέλουμε να πάρουμε τις τιμές για όλα τα πεδία όπου id=1. Θεωρούμε πως το πεδίο id είναι το primary key του πίνακα. Θα χρειαστούμε,λοιπόν, τις παρακάτω εντολές:
$sql="SELECT * FROM Users WHERE id='1'";
$result=mysql_query($sql)
if($result){
$row=mysql_fetch_assoc($result);
echo $row["name"]." ".$row["surname"];
}else{
echo mysql_error();
}

Παρατηρήσεις Κώδικα
Η μεταβλητή $sql είναι μια τυχαία μεταβλητή στην οποία αποθηκεύουμε την εντολή SQL που θα εκτελέσουμε, σε μορφή string.
Στη μεταβλητή $result αποθηκεύουμε το αποτέλεσμα της εντολής mysql_query($sql) η οποία εκτελεί την εντολή SQL. Αν η μεταβλητή $result είναι TRUE, σημαίνει πως …

Submit Form - Javascript Error

Έστω ότι έχουμε μία πολύ απλή φόρμα HTML όπως η παρακάτω:
<form name="sample" id="sample" method="GET" action="<index.html">
<label for="name">Εισάγετε το όνομά σας</label>
<input type="text" name="name" id="name">
<input type="submit" name="submit" id="submit" value="Καταχώρηση">
</form>
Στη φόρμα αυτή ο χρήστης απλώς καταχωρεί το όνομά του. Δε θα βόλευε όμως αν μπορούσαμε να ελέγξουμε ότι δε θα πατήσει απλώς "Καταχώρηση" χωρίς να έχει συμπληρώσει τη φόρμα; Ας φτιάξουμε λοιπόν και τον κατάλληλο javascript κώδικα:
<script language="javascript">
function check(){
if(document.getElementById("name").value.length!=0){
document.getElementById("sample).submit();
}else{
alert("Παρακαλώ συμπληρώστε τα πεδία της φόρμας");
}
}
</script>

Έτσι δημιουργήσαμε τη function "check"…

Λίστα χρωμάτων

Σε προηγούμενο παράδειγμα δώσαμε ένα combobox με τις χώρες του κόσμου. Αντίστοιχα λοιπόν θα κάνουμε και τώρα με τα χρώματα.

Τα ονόματα και οι κωδικοί των γραμμάτων έχουν αντιγραφεί από τον πίνακα που βρίσκεται εδώ. Τα ονόματα αυτά αναγνωρίζονται από τους browsers(δεν είναι τυχαία δηλαδή) αλλά δεν είναι σύμφωνα με τα standard του CSS που σημαίνει πως αργά ή γρήγορα θα πάψουν να χρησιμοποιούνται. Γι' αυτό το λόγο, χρησιμοποιούμε στο combobox τα ονόματα αυτά, αλλά ως τιμές τους δεκαεξαδικούς κώδικες των χρωμάτων.

<select name="color" id="color" size="1" >
<option value="#F0F8FF" style="color:#F0F8FF">AliceBlue</option>
<option value="#FAEBD7" style="color:#FAEBD7">AntiqueWhite</option>
<option value="#00FFFF" style="color:#"00FFFF>Aqua</option>
<option value="#7FFFD4" style="color:#7FFFD4">Aquamarine</option>
<option value=&qu…

Ελληνική λίστα χωρών

Το παρακάτω είναι κάτι που λίγο-πολύ χρειάζεται όταν φτιάχνουμε φόρμες πχ. για εγγραφή χρήστη. Οπότε το επικολλώ όπως ακριβώς βρέθηκε εδώ(με κάποιες μικρές διορθώσεις).
<select name="country" size=1 >
<option value="mk" >F.Y.R.O.M. (Πρώην Γιουγκοσλαβική Δημοκρατία της Μακεδονίας)</option>
<option value="sh" >Αγία Ελένη</option>
<option value="sm" >Άγιος Μαρίνος</option>
<option value="ao" >Αγκόλα</option>
<option value="az" >Αζερμπαϊτζάν</option>
<option value="eg" >Αίγυπτος</option>
<option value="et" >Αιθιοπία</option>
<option value="ht" >Αϊτή</option>
<option value="ci" >Ακτή Ελεφαντοστού</option>
<option value="al" >Αλβανία</option>
<option value="dz" >Αλγερία</option>
<option value="as" >Αμερικανική Σαμόα</option>
<…

Μεταβλητές PHP - Διάρκεια

Όταν μεταφέρουμε δεδομένα από φόρμες, στις PHP σελίδες μας, μπορούμε να χρησιμοποιήσουμε 4 διαφορετικούς τύπους μεταβλητών/μεθόδων. Κάθε τύπος έχει το δικό του τρόπο απεικόνισης και τη δική του διάρκεια.
Πιο αναλυτικά, έχουμε τις μεταβλητές $_GET, $_POST, $_SESSION και $_COOKIE.
Με τη μέθοδο GET, τα δεδομένα που μεταφέρονται από σελίδα σε σελίδα ενσωματώνονται στο url. Έτσι, αν δούμε το url μιας σελίδας στο Internet να είναι index.php?session_id=1214342&name=john αντί για index.php σημαίνει πως με τη μέθοδο GET μεταφέρονται από τη μία σελίδα στην άλλη το Session_Id και το όνομα(name).Με τη μέθοδο POST, τα δεδομένα μεταφέρονται από τη μία σελίδα στην άλλη μέσα στην αίτηση απόκρισης του browser προς τον server. Είναι η πλέον ενδεδειγμένη μέθοδος για την αποστολή σημαντικών στοιχείων στον server, όπως πχ. του κωδικού πρόσβασης, αφού τα στοιχεία δεν δημοσιεύονται στο url της σελίδας.Με τη μέθοδο SESSION τα στοιχεία που επιλέγουμε, κρατούν τις τιμές τους, μέχρι ο χρήστης να κλείσει τον …

Διαφορές σε Relative Path

Για να εκτελεστεί μία σελίδα PHP, απαιτείται ένας web server(πχ. IIS, Apache). Έστω λοιπόν ότι το Document Root του υπολογιστή είναι το C:/www/ και ότι έχουμε την παρακάτω δομή:
Το index.php περιλαμβάνει τον παρακάτω κώδικα:<html>
<head>
<link type="text/css" href="styles/style.css">
</head>
<body>
<?php
include("includes/header.php");
?>
</body>
</html>
Έστω λοιπόν ότι το header.php εκτυπώνει την εικόνα sample.jpg του φακέλου images στην οθόνη ενώ το style.css την βάζει background στη σελίδα.
Παρατηρούμε καταρχήν πως το φύλλο CSS γίνεται link ενώ το header.php γίνεται include.
Όταν κάνουμε include είναι σαν τον κώδικα της σελίδας που επιλέγουμε, να τον κάνουμε copy-paste στον κώδικα της σελίδας από την οποία εκτελούμε την εντολή include. Δηλαδή είναι σα να γράφαμε στο index.php:<body>
<img src="image_path">
</body>
Εφόσον λοιπόν αναφερόμ…

Ανάκτηση ονόματος από κωδικό χώρας

Σε προηγούμενη ανάρτηση ανάφερθηκε μια Ελληνική Λίστα Χωρών για χρήση σε οποιαδήποτε φόρμα. Σε περίπτωση όμως που θέλουμε να ανακτήσουμε από τον κωδικό(option value) της χώρας, το όνομά της, τι κάνουμε;
Μία λύση θα ήταν να έχουμε ένα πίνακα σε μια βάση δεδομένων(ή σε μια μεταβλητή) με δύο στήλες: "Κωδικό χώρας" και "Όνομα χώρας". Μια άλλη λύση θα ήταν να έχουμε ένα αρχείο που να περιέχει τις απαιτούμενες πληροφορίες.

Εδώ έχει γραφεί ο τρόπος:

Αποθήκευση σε μεταβλητή$countries = array("mk"=>"F.Y.R.O.M. (Πρώην Γιουγκοσλαβική Δημοκρατία της Μακεδονίας)",
"sh"=>"Αγία Ελένη",
"sm"=>"Άγιος Μαρίνος",
"ao"=>"Αγκόλα",
"az"=>"Αζερμπαϊτζάν",
"eg"=>"Αίγυπτος",
"et"=>"Αιθιοπία",
"ht"=>"Αϊτή",
"ci"=>"Ακτή Ελεφαντοστού",
"al"=>"Αλβανία",
"dz"=>"Αλγε…