php ekspert søges!

Kom med forslag til eller stil spørgsmål om selve forummet.
Nyt svar
Medlemsavatar
Holger
Audio Alchemist
Indlæg: 37674
Sted: Fyn

php ekspert søges!

Indlæg af Holger »

Jeg vil gerne tilføje et ekstra felt i folks Profile til gearliste.

Jeg har fundet og downloadet et phpbb hack som kan gøre dette, men det kræver stadig en hvis viden og kendskab til at editere i php filerne m.v.

Så er du php ekspert og bor i Københavnsområdet og gider tager forbi mit studie, så giv mig et kald på 26 799 003 eller en email på holger@popmusic.dk
Senest rettet af Holger tirs 23. maj 2006 12:53, rettet i alt 1 gang.

Medlemsavatar
Lauge
Forum Donator
Indlæg: 445
Sted: Espergærde (3060)

Indlæg af Lauge »

Hey Holger...

Hvis du endnu ikke har fået hjælp til dit PhP stuff - så hjælper jeg gerne.
Jeg arbejder dog med C# .NET - men kan vel godt tilføje et felt til en fil i PhP :shock:

Send filen til mig på mail hvis jeg skal hjælpe.
Lauge

Medlemsavatar
Holger
Audio Alchemist
Indlæg: 37674
Sted: Fyn

Indlæg af Holger »

Hey

Jo tak. Jeg vil dog foretrække at gøre det i fællesskab da der ellers er bøvl med koder og osv.

Jeg er også lidt nervøs for om forummet kan gå i skvudder mudder når man piller ved php'en, da der skal editeres i en del filer. Det er ikke bare sådan lige, i hver fald ud fra vejledningen at forstå :-/

Hvis du har styr på php og ved hvordan man kan editere fra en Mac (hvilket program skal man bruge?) så kan vi evt. gøre det en dag du er i København?

hilsen

Holger

Medlemsavatar
Alex - Aural Invasion
Medlem
Indlæg: 541
Sted: Frederiksberg

Indlæg af Alex - Aural Invasion »

Holger prøv at kig på http://www.eksperten.dk det er en pointbaseret-hjemmeside. Du stiller dit spørgsmål, sætter en pris på hvad svaret er værd og så får du hjælp.....hvad man bruger de point til aner jeg ikke, jeg ved bare der hele tiden strømmer nye ind på min konto så jeg altid har mulighed for at spørge løs :-D

og det er altså ikke begyndere der sidder derinde, check det ud!

Medlemsavatar
Holger
Audio Alchemist
Indlæg: 37674
Sted: Fyn

Indlæg af Holger »

Klart klart, det er mere et spørgsmål om, at hvis noget først går galt, så går det virkelig galt.. og så er det bedre at have en ekspert lige ved hånden helt fra starten.

Medlemsavatar
Lauge
Forum Donator
Indlæg: 445
Sted: Espergærde (3060)

Indlæg af Lauge »

Alex - Aural Invasion skrev:Holger prøv at kig på http://www.eksperten.dk det er en pointbaseret-hjemmeside. Du stiller dit spørgsmål, sætter en pris på hvad svaret er værd og så får du hjælp.....hvad man bruger de point til aner jeg ikke, jeg ved bare der hele tiden strømmer nye ind på min konto så jeg altid har mulighed for at spørge løs :-D

og det er altså ikke begyndere der sidder derinde, check det ud!
Ja spørg på Eksperten - der er altid en PhP haj til at hjælpe. Lad mit tilbud stå som en nødløsning :-D

Jeg har også en masse jern i ilden pt :twisted:
Lauge

Medlemsavatar
Alex - Aural Invasion
Medlem
Indlæg: 541
Sted: Frederiksberg

Indlæg af Alex - Aural Invasion »

Holger skrev:Klart klart, det er mere et spørgsmål om, at hvis noget først går galt, så går det virkelig galt.. og så er det bedre at have en ekspert lige ved hånden helt fra starten.
Kan du ikke bare have en backup af koden liggende? så kan du altid copy-paste hvis der går ged i den og mod alle ods at de ikke skulle kunne hjælpe dig.

Medlemsavatar
ecozyz
Medlem
Indlæg: 435

Indlæg af ecozyz »

jeg tror altså at i gør det alt for svært..
Den kode du vil ændre..
find lige dreamweaver ( demo tyve dage på deres site)
åbn den side du vil modificere..
se hvordan den ser ud i html..
Er det KUN et spørgsmål om at få et bestemt felt gjort større, med mulighed for at der skal kunne skrives mere til databasen, er det rimeligt simpelt.
Altså ..
modificer den pågældende side ( gem en kopi ( original) af den side du modificerer
og upload den modficerede side.
Skal du ind og rode med
1.
database ( kræver ekspert)
2.
tabeller i database ( endnu klogere ekspert)

Omvendt er php så simpelt..
Ønsker du at modificere et felt, så der f.eks kan skrives mere ind i det, skal du bare finde koden hvor der står ( hvis limit er 255 ansalg) et eller andet uforståeligt .. 255.
lav dette om til 2550 og vupti det virker.
Der er dog ofte sammenhæng mellem HTML og php, sådan at forstå at det jo ikke er muligt at skrive ti gange så mange bogstaver i et felt der ikke får sådan en scroll dims ovre i siden. DVS modificerer du skal du i HTML tillade scroll ( ?!)
php er ydermere tit skruet sådan sammen at en side først henter en anden, før den virker.
Derfor er det tit nødvendigt at rode lidt rundt, før man piller.
Omvendt, hvis din forespørgsel på en ekspert handler om dette phpBB site, så findes der hacks til alt, og det er rent faktisk ret svært at "modificere" et phpbb site..
( driver selv et site, hvor jeg droppede phpbb, da det var for svært at lave layout på)
valgte forøvrigt i stedet spip.net, der ud over at være free og alt det der, skovler robotter ind ( crawlers) og som ( det må jo være ret smart) ligger top 5 igen og igen på ord, helt uden at jeg betaler for det..

Kan du ikke forsøgsvis prøve at poste den/de sider du ønsker at modificere.. ( ved godt at de ikke virker uden DB..) men måske kan jeg gennemskue et eller andet..(gratis)
pt ren software

Medlemsavatar
Holger
Audio Alchemist
Indlæg: 37674
Sted: Fyn

Indlæg af Holger »

Altså der er tale om et phpbb hack, fordi jeg gerne vil have tilføjet et helt nyt felt.

Jeg synes ærligt talt ikke det ser helt så let ud.

Jeg har læst forklaringen, den er som følger:

#########################################################################################
##
## Hack Title: Add new field to profile
## Hack Version: 1.2.2 (ex phpbb 2.0.4)
## Author Acid
##
## Description: Just a simple way to add a new field to profile. "info" can be
## changed to "whatever" of course but be aware of the spelling (e.g.
## "INFO", "info", "user_info").
## If you want to add more than one field duplicate the following
## steps and change "info" to "whatever" (be aware of the spelling).
## The field "info" is just an example.
##
## Files to edit: 8
## admin/admin_users.php
## language/lang_english/lang_main.php
## includes/usercp_viewprofile.php
## includes/usercp_register.php
## includes/usercp_avatar.php
## templates/xxx/admin/user_edit_body.tpl
## templates/xxx/profile_add_body.tpl
## templates/xxx/profile_view_body.tpl
##
#########################################################################################
##
## Installation/Author Notes:
## First always backup the files/database that you're going to edit.
##
## This hacks adds a new column to the 'user' table.
##
#########################################################################################
##
## Versions:
##
## 1.2.2 - optional part changed
## 1.2.1 - typo in "dropdown guide" fixed
## 1.2.0 - guide re_written
## 1.0.1/1.0.8 - ...
## 1.0 - Release
##
#########################################################################################
#
#-----[ SQL ]-------------------------------------------
#
# You have to execute the following query via phpmyadmin (change prefix)..

ALTER TABLE phpbb_users ADD user_info VARCHAR(255) AFTER user_interests;

# If you¥re going to add/change several fields duplicate the above query and
# change the field name "user_info".
#
#########################################################################################
#
#-----[ OPEN ]------------------------------------------
#
# language/lang_english/lang_main.php
#
#-----[ FIND ]---------------------------------------------------
#
$lang['Interests'] = 'Interests';

#
#-----[ BELOW ADD ]---------------------------------------------------
#
$lang['Info'] = 'Info';



#
#-----[ OPEN ]------------------------------------------
#
# includes/usercp_viewprofile.php
#
#-----[ FIND ]---------------------------------------------------
#
'INTERESTS' => ( $profiledata['user_interests'] ) ? $profiledata['user_interests'] : ' ',

#
#-----[ BELOW ADD ]---------------------------------------------------
#
'INFO' => ( $profiledata['user_info'] ) ? $profiledata['user_info'] : ' ',
'L_INFO' => $lang['Info'],



#
#-----[ OPEN ]------------------------------------------
#
# includes/usercp_register.php
#
#-----[ FIND ]---------------------------------------------------
#
$strip_var_list = array('username' => 'username', 'email' => 'email', 'icq' => 'icq', 'aim' => 'aim', 'msn' => 'msn', 'yim' => 'yim', 'website' => 'website', 'location' => 'location', 'occupation' => 'occupation', 'interests' => 'interests');

#
#-----[ IN-LINE FIND ]---------------------------------------------------
#
'interests'

#
#-----[ IN-LINE ADD ]---------------------------------------------------
#
, 'info' => 'info'

#
#-----[ FIND (2x) ]---------------------------------------------------
#
$interests = stripslashes($interests);

#
#-----[ always BELOW ADD ]---------------------------------------------------
#
$info = stripslashes($info);

#
#-----[ FIND (just a quote) ]---------------------------------------------------
#
$sql = "UPDATE " . USERS_TABLE . "

#
#-----[ IN-LINE FIND ]---------------------------------------------------
#
$interests) . "'

#
#-----[ IN-LINE ADD ]---------------------------------------------------
#
, user_info = '" . str_replace("\'", "''", $info) . "'

#
#-----[ FIND ]---------------------------------------------------
#
$sql = "INSERT INTO " . USERS_TABLE . "

#
#-----[ IN-LINE FIND ]---------------------------------------------------
#
user_interests

#
#-----[ IN-LINE ADD ]---------------------------------------------------
#
, user_info

#
#-----[ IN-LINE FIND ]---------------------------------------------------
#
$interests) . "'

#
#-----[ IN-LINE ADD ]---------------------------------------------------
#
, '" . str_replace("\'", "''", $info) . "'

#
#-----[ FIND ]---------------------------------------------------
#
$interests = $userdata['user_interests'];

#
#-----[ BELOW ADD ]---------------------------------------------------
#
$info = $userdata['user_info'];

#
#-----[ FIND (just a quote) ]---------------------------------------------------
#
display_avatar_gallery($mode, $avatar_category

#
#-----[ IN-LINE FIND ]---------------------------------------------------
#
$interests

#
#-----[ IN-LINE ADD ]---------------------------------------------------
#
, $info

#
#-----[ FIND (just a quote) ]--------------------------
#
$template->assign_vars(array(
.
.
.
.
'INTERESTS' => $interests,

#
#-----[ BELOW ADD ]---------------------------------------------------
#
'INFO' => $info,
'L_INFO' => $lang['Info'],



#
#-----[ OPEN ]------------------------------------------
#
# includes/usercp_avatar.php
#
#-----[ FIND (just a quote) ]---------------------------------------------------
#
function display_avatar_gallery($mode, &$category

#
#-----[ IN-LINE FIND ]---------------------------------------------------
#
&$interests

#
#-----[ IN-LINE ADD ]---------------------------------------------------
#
, &$info

#
#-----[ FIND (just a quote) ]---------------------------------------------------
#
$params = array('coppa', 'user_id'

#
#-----[ IN-LINE FIND ]---------------------------------------------------
#
'interests'

#
#-----[ IN-LINE ADD ]---------------------------------------------------
#
, 'info'



#
#-----[ OPEN ]------------------------------------------
#
# admin/admin_users.php
#
#-----[ FIND ]---------------------------------------------------
#
$interests = ( !empty($HTTP_POST_VARS['interests']) ) ? trim(strip_tags( $HTTP_POST_VARS['interests'] ) ) : '';

#
#-----[ BELOW ADD ]---------------------------------------------------
#
$info = ( !empty($HTTP_POST_VARS['info']) ) ? trim(strip_tags( $HTTP_POST_VARS['info'] ) ) : '';

#
#-----[ FIND (2x) ]--------------------------------------------
#
$interests = htmlspecialchars(stripslashes($interests));

#
#-----[ always BELOW ADD ]---------------------------------------------------
#
$info = htmlspecialchars(stripslashes($info));

#
#-----[ FIND (just a quote) ]---------------------------------------------------
#
$sql = "UPDATE " . USERS_TABLE . "

#
#-----[ IN-LINE FIND ]---------------------------------------------------
#
$interests) . "'

#
#-----[ IN-LINE ADD ]---------------------------------------------------
#
, user_info = '" . str_replace("\'", "''", $info) . "'

#
#-----[ FIND ]---------------------------------------------------
#
$interests = htmlspecialchars($this_userdata['user_interests']);

#
#-----[ BELOW ADD ]---------------------------------------------------
#
$info = htmlspecialchars($this_userdata['user_info']);

#
#-----[ FIND ]---------------------------------------------------
#
$s_hidden_fields .= '<input type="hidden" name="interests" value="' . str_replace("\"", """, $interests) . '" />';

#
#-----[ BELOW ADD ]---------------------------------------------------
#
$s_hidden_fields .= '<input type="hidden" name="info" value="' . str_replace("\"", """, $info) . '" />';

#
#-----[ FIND ]---------------------------------------------------
#
'INTERESTS' => $interests,

#
#-----[ BELOW ADD ]---------------------------------------------------
#
'INFO' => $info,
'L_INFO' => $lang['Info'],



#
#-----[ OPEN ]------------------------------------------
#
# templates/xxx/profile_add_body.tpl
#
#-----[ FIND ]---------------------------------------------------
#
<tr>
<td class="row1"><span class="gen">{L_INTERESTS}:</span></td>
<td class="row2">
<input type="text" class="post"style="width: 200px" name="interests" size="35" maxlength="150" value="{INTERESTS}" />
</td>
</tr>

#
#-----[ BELOW ADD ]---------------------------------------------------
#
<tr>
<td class="row1"><span class="gen">{L_INFO}:</span></td>
<td class="row2"> <input type="text" class="post"style="width: 200px" name="info" size="35" maxlength="150" value="{INFO}" /> </td>
</tr>



#
#-----[ OPEN ]------------------------------------------
#
# templates/xxx/profile_view_body.tpl
#
#-----[ FIND ]---------------------------------------------------
#
<tr>
<td valign="top" align="right"><span class="gen">{L_INTERESTS}:</span></td>
<td> <b><span class="gen">{INTERESTS}</span></b></td>
</tr>

#
#-----[ BELOW ADD ]---------------------------------------------------
#
<tr>
<td valign="top" align="right"><span class="gen">{L_INFO}:</span></td>
<td> <b><span class="gen">{INFO}</span></b></td>
</tr>



#
#-----[ OPEN ]------------------------------------------
#
# templates/xxx/admin/user_edit_body.tpl
#
#-----[ FIND ]---------------------------------------------------
#
<tr>
<td class="row1"><span class="gen">{L_INTERESTS}</span></td>
<td class="row2">
<input type="text" name="interests" size="35" maxlength="150" value="{INTERESTS}" />
</td>
</tr>

#
#-----[ BELOW ADD ]---------------------------------------------------
#
<tr>
<td class="row1"><span class="gen">{L_INFO}</span></td>
<td class="row2"> <input class="post" type="text" name="info" size="35" maxlength="50" value="{INFO}" /> /td>
</tr>

#########################################################################################
#########################################################################################
#########################################################################################

Medlemsavatar
Martin Frederiksen
Medlem
Indlæg: 991
Sted: Odense

Indlæg af Martin Frederiksen »

Men hvis du bare sørger for at tage en backup på din mysql database. Så er der intet der kan gå tabt. Da alt "Liv på forumet" gemmes i databasen.
Når du har taget backup, så kan du snildt prøve dig frem. Og går det galt, ja så lægger du bare scriptet op på din server på ny. Og tilføjer databasen i mysql serveren. Og så ser alt ud som det gjorde, inden du begyndte at pille :)

Medlemsavatar
ecozyz
Medlem
Indlæg: 435

Indlæg af ecozyz »

Det kræver en ekspert..
Alene det at du skal lave et .."query via phpmyadmin (change prefix).. "
er reelt nok til at det kræver en der ved hvad han laver.
Det hacket gør, er at tilføje en ny "tabel" til den database der allerede er etableret da du første gang etablerede dette sted. ( eller måske !? endnu værre lave en tabel om til en anden ( andet navn))
Derfor kan du se frem til en masse problemer hvis du vælger at "hacke".
herunder det faktum at du formodentligt ikke kan opdatere om tre måneder, hvorefter du skal starte forfra ( igen med risiko for at ødelægge din database ) altså alt det der er skrevet ind.
Du kan jo IKKE lave en back up, uden at få hacket med ( tror jeg)
hvilket - måske - er lig med at du heller ikke kan opdatere uden at få hacket med etc..
Mit bud er at det ikke er besværet værd. Så hellere droppe det.
Et alternativ er at finde et lille stykke software, foreksempel en guestbook. ( en simpel en der kun kan vise tekst)( og det kun på en side)
Her kan alle der gerne vil have et udvidet "CV" eller gearliste skrive sig ind.
Og hvis der var et link under/ved siden af logo der åbnede "guestbogen" i et nyt vindue var det jo klaret ( kræver sikkert at du ibrugtager endnu en database) så det er altså nødvendigt at du har nogle ledige..
måske ikke helt så funky en løsning som det integrerede hack, men tæt på.. du kunne også lave et "felt" i http://www.popmusic.dk/forum/profile.php ( tror det er templatesiden ) og lade guestbook skrive inde i dette felt..
Der er sikkert mange andre måder at løse det her på..
pt ren software

Medlemsavatar
Holger
Audio Alchemist
Indlæg: 37674
Sted: Fyn

Indlæg af Holger »

Hvad med blot at udvide antallet af tilladte tegn i profilen under Interests?

Medlemsavatar
Martin Frederiksen
Medlem
Indlæg: 991
Sted: Odense

Indlæg af Martin Frederiksen »

Altså nu skal vi lige slå en ting helt fast.

Når du laver en backup af databasen. Så har du HELE sidens indhold, opsætning, etc... gemt. Og den vil ligge på din egen komputer. Uanset hvordan du så ellers ændre i databasen derefter, er underordnet. For når du geninlæser din backupdatabase. Så ser alt Præcis ud som i det samme sekund, du lavede backupen.

Husk dog, at alt der er tilføjet til databasen efter backupen, vil gå tabt

Medlemsavatar
Holger
Audio Alchemist
Indlæg: 37674
Sted: Fyn

Indlæg af Holger »

Nej det mener jeg ikke er rigtigt. For forummet er jo meget mere end bare databasen.

Smilies, smileykoder, opsætning, avatars, logografik, m.v. ligger jo ikke i databasen.'

Men man kan selvfølgelig backe uppe sig ud af det meste.

Medlemsavatar
Martin Frederiksen
Medlem
Indlæg: 991
Sted: Odense

Indlæg af Martin Frederiksen »

Nej det har du ret i. Men det er jo også ting du iforvejen har liggende på din computer går jeg da ud fra. For på en eller anden måde må du jo have uploadet det til din server :)

Pointen med databasen er at det folk har skrevet her inde, + deres profiler. Ja alt hvad brugeren opretter/skriver. Det gemmes alt sammen i databasen.

Det samme gælder, hvis du kommer til at kludre i noget php. Så kan du bare tage den originale fil, og overskrive den du legede med. Og så er det hele iorden igen.

Men ja. Det er rimeligt indviklet. Dog ikke mere indviklet end det godt kan lade sig gøre. En helt anden ting er. Har du kigget efter færdige moduler til siden. Fordi de fleste moduler fungere således, at man uploader det til ens webhotl. Og så skriver man en givende adresse i URL-baren og så kommer der en installations menu frem. SOm du bare skal udfylde, og trykke "Kør" og så indtallere den selv det hele, og retter selv de filer der skal rettes.

Jeg kan godt lige kigge efter moduler senere.
Vender tilbage :-D og god fredag

Medlemsavatar
Delax
Forum Donator
Indlæg: 3640
Sted: København

Indlæg af Delax »

Hej

Jeg arbejde som webudvikler i et dansk konsulenthus.


Jeg har arbejde med professionelt med mysql,phpmyadmin og phpbb og moduludvidelser til det.


kunne evt. hjælpe hvis det er en "mindre" opgave

Medlemsavatar
Delax
Forum Donator
Indlæg: 3640
Sted: København

Indlæg af Delax »

Iøvrigt bør du have 2 sites. Et intranet testsite, som kun du selv kan se, med en testdatabase og et produktionssite og en produktions base. På den måde undgår du at blande backup ind i nyudvikling og har det hele tiden skildt ad. Så kan du når den nyefunktionalitet er implementeret og testet sætte testsitet til at kigge på prodbasen når du integrationstester inden du lægger testkoden over i prodsitet.

faktisk er 3 baser godt. en udvikling, en test og en prod. testen er så en kopi af prodbasen lige før du integrationstester men det afhænger jo af, hvor meget der skal nyudvikles på systemet.

Mysql er en ret simpel database som er nem at sætte op og kopierer samt restore.

Medlemsavatar
Luny Tune
Forum Donator
Indlæg: 7049
Sted: Snekkersten

Indlæg af Luny Tune »

Jeg har en kammerat med hårdt brug for hjælp!
Er du frisk mod betaling? Så kan du give ham et kald og høre om omfanget. Det burde være til at overskue, men ved man intet om det så er man jo lost alligevel.

Send mig en besked, hvis du vil høre nærmere.
SnakeRock - PickYourPriceMastering
Citat Bryla: "Noget jeg absolut ikke er fortaler for er våben, narko og NI's Akoustik Pianos."

Nyt svar