Η σελίδα μας αναβαθμίστηκε, γι' αυτό τον λόγο τα μέλη μας θα πρέπει να ζητήσουν νέο κωδικό πρόσβασης από την υπηρεσία "Αποστολή κωδικού πρόσβασης".
Εάν το email με τον νέο κωδικό δεν έρθει στο inbox κοιτάξτε και στο spam folder. Ο server είναι φρέσκος και δεν έχει το reputation που του αξίζει.

Δημιουργία υπογραφής με php

Μια περιοχή όπου τα μέλη μας μπορούν να βάζουν τα PHP scripts που έχουν φτιάξει και θέλουν να τα μοιραστούν με τα υπόλοιπα μέλη.

Συντονιστές: WebDev Moderators, Super-Moderators, PHP Moderators

Απάντηση
Άβαταρ μέλους
mrpc
WebDev Moderator
Δημοσιεύσεις: 3392
Εγγραφή: 03 Μάιος 2000 03:00
Τοποθεσία: Εξάρχεια
Επικοινωνία:

Δημιουργία υπογραφής με php

Δημοσίευση από mrpc » 04 Ιούλ 2005 16:38

Εικόνα
Επειδή πολλοί με ρωτάνε για την υπογραφή μου, είπα να κάνω ένα μικρό tutorial.

Η υπογραφή μου είναι μια στατική εικόνα, η παρακάτω:
Εικόνα
και απλά από πάνω γράφω διάφορα στοιχεία χρησιμοποιόντας την GDLibrary της php.
Επειδή το site μου είναι phpnuke με phpbb, ο κώδικας της υπογραφής μου είναι βασισμένος σε αυτά. Όμως με λίγο πείραγμα μπορείτε να κάνετε ότι θέλετε.

Φτιάχνουμε λοιπόν ένα αρχείο signature.php:

Κώδικας: Επιλογή όλων

<?php 
define&#40;'IN_PHPBB', true&#41;; 
$phpbb_root_path = 'modules/Forums/'; 
#include&#40;$phpbb_root_path . 'extension.inc'&#41;; 
#include&#40;$phpbb_root_path . 'common.php'&#41;; 
include&#40;'mainfile.php'&#41;; 
$guest_online_num = $db->sql_numrows&#40;$db->sql_query&#40;"SELECT * FROM ".$prefix."_session WHERE guest='1'"&#41;&#41;;
$member_online_num = $db->sql_numrows&#40;$db->sql_query&#40;"SELECT * FROM ".$prefix."_session WHERE guest='0'"&#41;&#41;;
$who_online_num = $guest_online_num + $member_online_num;
$who_online = "On Line now&#58; $guest_online_num Guests & $member_online_num members"; 

$sql = "SELECT username FROM $user_prefix"._users." ORDER BY user_id DESC LIMIT 0,1";
$result = $db->sql_query&#40;$sql&#41;;
$row = $db->sql_fetchrow&#40;$result&#41;;
$lastuser = $row&#91;username&#93;;
$numrows = $db->sql_numrows&#40;$db->sql_query&#40;"SELECT user_id FROM $user_prefix"._users.""&#41;&#41;;

$sql = "SELECT COUNT&#40;user_id&#41; AS userCount FROM $user_prefix"._users."";
$result = $db->sql_query&#40;$sql&#41;;
$row = $db->sql_fetchrow&#40;$result&#41;;
$userCount = $row&#91;userCount&#93;-1; //το -1 επειδή ο πρώτος χρήστης είναι ο anonymous ;&#41;

// Μέχρι εδώ τράβηξα ότι στοιχεία ήθελα από το phpbb. Παρακάτω κάνω τη δουλειά μου&#58;


$image = "images/logo.png"; // η εικόνα που χρησιμοποιώ για να γράψω πάνω
$im = imagecreatefrompng&#40;$image&#41;; //φτιάχνω μια νέα εικόνα, βασισμένη στην προηγούμενη
$tc  = ImageColorAllocate &#40;$im, 0, 0, 0&#41;; //μαύρο χρώμα
ImageString&#40;$im, 3, 220, 2, "Site's information&#58;", $tc&#41;;  //αρχίζουμε και γράφουμε τις πληροφορίες.
// οι παράμετροι είναι&#58; η εικόνα που φτιάχνουμε, το font, η θέση χ, η θέση ψ, το κείμενο και το χρώμα.
ImageString&#40;$im, 2, 220, 25, "$who_online", $tc&#41;; 
ImageString&#40;$im, 2, 220, 35, "Total registered users&#58; $userCount", $tc&#41;; 
ImageString&#40;$im, 2, 220, 45, "Newest user&#58; $lastuser", $tc&#41;; 
header&#40;"Content-Type&#58; image/png"&#41;; //στέλνουμε στον browser την πληροφορία header ότι αυτό που θα πάρει είναι μια εικόνα png
Imagepng&#40;$im,'',100&#41;; //εμφάνιση της εικόνας
ImageDestroy &#40;$im&#41;; //ελευθερώνει τη μνήμη από την εικόνα
?> 
Καλέστε το από τον browser σας για να δείτε αν δουλεύει σωστά.

Επειδή όμως σε πολλά forum δεν επιτρέπονται οι εικόνες με κατάληξη png, βάζουμε τα παρακάτω στο αρχείο .htaccess (μιλάμε πάντα για apache):

Κώδικας: Επιλογή όλων

RewriteEngine on
RewriteRule ^signature.gif /signature.php
RewriteRule ^signature.jpg /signature.php
RewriteRule ^signature.png /signature.php
και έτσι μπορούμε να καλέσουμε το αρχείο signature.php δίνοντας στον browser signature.jpg ή gif ή png.

Τέλος πρέπει να προσθέσουμε στην υπογραφή μας τα παρακάτω (για phpbb):

Κώδικας: Επιλογή όλων

&#91;url=link για το site Μας&#93;&#91;img&#93;το site μας/signature.png&#91;/img&#93;&#91;/url&#93;
Δείτε ένα άλλο παράδειγμα, για όσους δεν θέλουν μπλεξίματα με το phpnuke ή το phpbb. Για το αρχείο signature.php:

Κώδικας: Επιλογή όλων

<?
$freestuff = file_get_contents&#40;"http&#58;//www.freestuff.gr/forums/index.php"&#41;; //τραβάμε την αρχική σελίδα του forum του freestuff
$totalmessages = "";
$totalmembers = ""; 
//βρίσκουμε πόσα μηνύματα υπάρχουν συνολικά
if &#40;preg_match&#40;"/Τα μέλη μας έχουν γράψει <b>&#40;.*&#41;<\/b> μηνύματα/",$freestuff, $matches&#41;&#41; &#123;
$totalmessages=$matches&#91;1&#93;; 
&#125;
//βρίσκουμε πόσα μέλη υπάρχουν συνολικά
if &#40;preg_match&#40;"/Υπάρχουν συνολικά <b>&#40;.*&#41;<\/b> εγγεγραμμένα/",$freestuff, $matches&#41;&#41; &#123;
$totalmembers=$matches&#91;1&#93;;
&#125;
$image = "http&#58;//www.pramnos.net/images/freestuff.png"; // μια πρόχειρη εικόνα που έφτιαξα
$im = imagecreatefrompng&#40;$image&#41;; 
$tc  = ImageColorAllocate &#40;$im, 0, 0, 0&#41;; 
ImageString&#40;$im, 3, 220, 2, "Site's information&#58;", $tc&#41;;  
ImageString&#40;$im, 2, 220, 25, "Total messages&#58; $totalmessages", $tc&#41;; 
ImageString&#40;$im, 2, 220, 35, "Total registered users&#58; $totalmembers", $tc&#41;; 
header&#40;"Content-Type&#58; image/png"&#41;; 
Imagepng&#40;$im,'',100&#41;;
ImageDestroy &#40;$im&#41;; 
?>
και όταν καλούμε το αυτό το αρχείο από τον browser βλέπουμε το παρακάτω:
Εικόνα
που δείχνει μερικά στοιχεία που τραβάει από την αρχική σελίδα του freestuff.

Άβαταρ μέλους
xultimatex
Honorary Member
Δημοσιεύσεις: 2501
Εγγραφή: 26 Ιούλ 2003 13:02
Τοποθεσία: Ξάνθη
Επικοινωνία:

Δημιουργία υπογραφής με php

Δημοσίευση από xultimatex » 04 Ιούλ 2005 19:04

Ωραίο. Με τον ίδιο τρόπο μπορείς να φτιάξεις πάρα πολλές εφαρμογές που τραβάνε δεδομένα από άλλα sites (όπως καιρός, χρηματιστήριο κτλ.) :)
:arrow: Αν προσπαθείς πολύ για να πετύχεις κάτι, ίσως το κάνεις με λάθος τρόπο...

Άβαταρ μέλους
mrpc
WebDev Moderator
Δημοσιεύσεις: 3392
Εγγραφή: 03 Μάιος 2000 03:00
Τοποθεσία: Εξάρχεια
Επικοινωνία:

Δημιουργία υπογραφής με php

Δημοσίευση από mrpc » 04 Ιούλ 2005 19:31

Ναι, αλλά πάντα με την άδειά τους ;)

Άβαταρ μέλους
ledraweb
Honorary Member
Δημοσιεύσεις: 1356
Εγγραφή: 13 Νοέμ 2004 11:00
Τοποθεσία: Λευκωσία

Δημιουργία υπογραφής με php

Δημοσίευση από ledraweb » 04 Ιούλ 2005 20:05

Πολύ καλό. Μπράβο και σε ευχαριστούμε... :wink:
None Of Us Is As Smart As All Of Us!!!

Εικόνα

Άβαταρ μέλους
MichalisS
Honorary Member
Δημοσιεύσεις: 2368
Εγγραφή: 03 Ιαν 2005 23:50

Δημιουργία υπογραφής με php

Δημοσίευση από MichalisS » 10 Ιούλ 2005 11:13

Μπορώ να βάλω Ελληνικούς χαρακτήρες;

Άβαταρ μέλους
xmavidis
Honorary Member
Δημοσιεύσεις: 1217
Εγγραφή: 02 Δεκ 2003 19:59
Τοποθεσία: Ηράκλειο

Δημιουργία υπογραφής με php

Δημοσίευση από xmavidis » 10 Ιούλ 2005 11:32

Νομίζω μπορείς (αν και δεν είμαι σίγουρος) χρησιμοποιώντας ελληνική γραμματοσειρά.
I want to know God’s thoughts; the rest are details.
Albert Einstein

Άβαταρ μέλους
ledraweb
Honorary Member
Δημοσιεύσεις: 1356
Εγγραφή: 13 Νοέμ 2004 11:00
Τοποθεσία: Λευκωσία

Δημιουργία υπογραφής με php

Δημοσίευση από ledraweb » 10 Ιούλ 2005 21:20

Ρε MRPC, μια και την κατέχεις την php δεν μου διορθώνεις και τον κώδικα από ΕΔΩ σε παρακαλώ :-? :-?
None Of Us Is As Smart As All Of Us!!!

Εικόνα

Άβαταρ μέλους
GRaecuS
Δημοσιεύσεις: 113
Εγγραφή: 02 Απρ 2003 10:21
Τοποθεσία: Thessaloniki
Επικοινωνία:

Δημιουργία υπογραφής με php

Δημοσίευση από GRaecuS » 06 Αύγ 2005 15:04

pws briskoume pws apo8ikeuontai ta dedomena sti basi wste na mporesoume na ta trabi3oume?

emphasy
Honorary Member
Δημοσιεύσεις: 4303
Εγγραφή: 16 Ιαν 2005 10:31

Δημιουργία υπογραφής με php

Δημοσίευση από emphasy » 06 Αύγ 2005 16:36

Wraio Tutorial mrpc :)

Άβαταρ μέλους
xultimatex
Honorary Member
Δημοσιεύσεις: 2501
Εγγραφή: 26 Ιούλ 2003 13:02
Τοποθεσία: Ξάνθη
Επικοινωνία:

Δημιουργία υπογραφής με php

Δημοσίευση από xultimatex » 06 Αύγ 2005 17:40

GRaecuS έγραψε:pws briskoume pws apo8ikeuontai ta dedomena sti basi wste na mporesoume na ta trabi3oume?
Αν πρόκειται για δικό σου site μάλλον πρέπει να ξέρεις πως λειτουργεί το phpbb ώστε να βρείς τα κατάλληλα tables. Μη με ρωτήσεις πως, δεν έχω χρησιμοποιήσει ποτέ...
Αν είναι από άλλο site δεν μπορείς να τραβήξεις από τη βάση τους. Μάλλον με άλλο τρόπο (πχ από την έξοδο) αλλά πρέπει να είσαι λίγο δεξιοτέχνης :wink:
:arrow: Αν προσπαθείς πολύ για να πετύχεις κάτι, ίσως το κάνεις με λάθος τρόπο...

st3F0s
Δημοσιεύσεις: 17
Εγγραφή: 08 Νοέμ 2005 16:37

Δημιουργία υπογραφής με php

Δημοσίευση από st3F0s » 03 Μάιος 2006 17:18

Πράγματι πολύ καλός και απλός ο κώδικας.

Θα ήθελα να ρωτήσω, εάν μπορούμε και πως να εμφανίσουμε και ελληνικούς χαρακτήρες μέσα στην εικόνα; (π.χ. Αντί για Total Users --> Σύνολο Μελών). Ευχ...

Άβαταρ μέλους
xultimatex
Honorary Member
Δημοσιεύσεις: 2501
Εγγραφή: 26 Ιούλ 2003 13:02
Τοποθεσία: Ξάνθη
Επικοινωνία:

Δημιουργία υπογραφής με php

Δημοσίευση από xultimatex » 11 Αύγ 2006 01:57

mrpc από το tut αυτό πήρα και την ιδέα αλλά και μερικά κόλπα για την υπογραφή μου... thnx! :)
:arrow: Αν προσπαθείς πολύ για να πετύχεις κάτι, ίσως το κάνεις με λάθος τρόπο...

Άβαταρ μέλους
AAT
Δημοσιεύσεις: 379
Εγγραφή: 23 Αύγ 2007 16:31
Τοποθεσία: Lemesos, Limassol
Επικοινωνία:

Δημιουργία υπογραφής με php

Δημοσίευση από AAT » 14 Νοέμ 2007 16:29

kalo ayto tha boitheisei polloys.

Άβαταρ μέλους
nikolas27
Honorary Member
Δημοσιεύσεις: 836
Εγγραφή: 11 Ιαν 2006 12:26
Τοποθεσία: ροδος

Δημιουργία υπογραφής με php

Δημοσίευση από nikolas27 » 14 Νοέμ 2007 19:02

πολυ καλο, ευχαριστω!

Άβαταρ μέλους
Andreas_O
Honorary Member
Δημοσιεύσεις: 1621
Εγγραφή: 14 Σεπ 2007 17:22
Τοποθεσία: Aθήνα
Επικοινωνία:

Δημιουργία υπογραφής με php

Δημοσίευση από Andreas_O » 14 Νοέμ 2007 23:12

Πολύ χρήσιμο :D // Κάνε αίτηση να γίνει και βοήθημα.. Γιατί βασικά και για tut κάνει, δεν είναι απλό scriptaki νομίζω..(λάδωσε τον cordis με κανά καλό scriptάκι για το freestuff :D )
;]

Απάντηση

Επιστροφή στο “PHP τα δικά μας scripts”

Μέλη σε σύνδεση

Μέλη σε αυτήν τη Δ. Συζήτηση: Δεν υπάρχουν εγγεγραμμένα μέλη και 1 επισκέπτης