Solved

PHP Beginner

Posted on 2010-09-21
20
599 Views
Last Modified: 2012-05-10
We have a PHP support site, Kayako, that we have on our own servers.  I am a little better than a beginner with .asp and know nothing about PHP.

I want to make some minor changes to a couple of pages and I am at a loss on how to proceed.
When I view the source from the browser, what I want to change is easy...it is simple HTML, but when I look for that same code on my server, I can not recognize it.

What do I need to learn how to make some changes to my webpages.
0
Comment
Question by:akbiro
  • 10
  • 5
  • 4
  • +1
20 Comments
 
LVL 6

Expert Comment

by:collins23
ID: 33725447
how does it appear on the server ? could you send a couple of lines you do not understand ?
0
 

Author Comment

by:akbiro
ID: 33725483
I want to access this page on my server and change some of the Icons.  Here is the link to the page on the server and attached is a snap shot of what I want to change.

http://65.111.176.231/index.php

THANKS
ServiceDesk.jpg
0
 
LVL 6

Expert Comment

by:collins23
ID: 33725568
what i asked for was the code for index.php ..

you could upload the parts here of the code that you do not understand.
0
 
LVL 6

Expert Comment

by:collins23
ID: 33725585
you can't see the PHP code from the browser (only HTML)

you will have to log into the server that hosts the code and open the index.php file

0
 

Author Comment

by:akbiro
ID: 33725592
Oh.,..I am sorry.  This is how dumb I am with PHP, I can not find the page on the server.  I know the path to the file, but I do not see an html file...sorry for my ignorance.
0
 

Author Comment

by:akbiro
ID: 33725620
This is the index.php file
<?php

//=======================================

//###################################

// Kayako Infotech Ltd. - SWIFT Framework

//

// Source Copyright 2001-2008 Kayako Infotech Ltd.

// Unauthorized reproduction is not allowed

// License Number: $%LICENSE%$

//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

//                   www.kayako.com

//###################################

//=======================================



define("SWIFT_AREA", 40);



// KACT 5/pages/297

require_once ("./swift.php");



/**

* ###############################################

* CSS OUTPUT

* ###############################################

*/

// KACT 5/pages/296

if ($_REQUEST["_ca"] == "css") {

	$template->cache(array('clientcss'));

	header("Content-Type: text/css");

	headerCache();



        // KACT 5/pages/303

	echo $template->displayTemplate("clientcss");

	exit;





/**

* ###############################################

* Other Action

* ###############################################

*/

} else {

	if (!$session->start(SESSION_CLIENT)) {

		// Failed to load session, Create a fresh session over here.

		$session->insertSession(SESSION_CLIENT, 0);

	}



        // KACT 5/pages/294

	if (defined("ISMODERNBILL") && (empty($_SWIFT["session"]["typeid"])))

	{

		$loginresult = $loginshare->authorize($_SESSION["client_email"], $_SESSION["client_password"]);

		if (!$loginresult)

		{

			echo "MB Core Error: Unable to continue, Login Failed";

			exit; // TRFC KACT 5/pages/247

		} // KACT 5/pages/298



	// KACT 5/pages/294

	} else if (defined("ISMODERNBILLV5") && (!empty($CONF["user"]["username"]))) {

		$loginresult = $loginshare->authorize($CONF["user"]["username"], $CONF["user"]["password"]);

		if (!$loginresult)

		{

			echo "MB v5 Core Error: Unable to continue, Login Failed";

			exit; // TRFC KACT 5/pages/247

		} // KACT 5/pages/298



	} else if (defined("ISWHMCS") && (!empty($whmcsuser["userid"]))) {

		$loginresult = $loginshare->authorize($whmcsuser["email"], $whmcsuser["password"]);

		if (!$loginresult)

		{

			echo "WHMCS Core Error: Unable to continue, Login Failed";

			exit; // TRFC KACT 5/pages/247

		} // KACT 5/pages/298

	}





	// ======= LOAD THE USER CREDENTIALS FROM ACTIVE LOGINSHARE MODULE =======



	loginShareLoadUser(); // Loads up user data from active loginshare module



	// Bug #646, escape user full name

	$userDisplayName = htmlspecialchars($_SWIFT["user"]["fullname"]);

	$template->assign("userdisplayname", $userDisplayName);

	//

	

	$loginshare->processUserGroup(); // Checks to see of empty user groups and loads default ones



	$loginshare->loadPermissions(); // Loads up the permissions for active user group



	// ======= MISC ACTIONS =======

	$loginemailcookie = $cookie->getSCookie("loginemail");

	// KACT 5/pages/294

	// KACT 5/pages/297

	if (!empty($loginemailcookie) && $_SWIFT["user"]["loggedin"] == false)

	{

		$loginpasscookie = $cookie->getSCookie("loginpassword");

		$template->assign("cookieloginemail", $loginemailcookie);

		$template->assign("cookieloginpassword", decryptCookiePassword($loginpasscookie));

		$template->assign("cookierememberme", "1");

	}



	// ======= PROCESS THE WIDGETS =======

	require_once ("./includes/Widgets/widgets.php");

	$template->assign("widgets", processWidgets($_widgets));



        // KACT 5/pages/294

	if (empty($_SWIFT["user"]["userid"]) && !empty($_SERVER["QUERY_STRING"]))

	{

                // KACT 5/pages/295

		$template->assign("querystring", iif(!stristr(htmlspecialchars($_SERVER["QUERY_STRING"]), "logout"), htmlspecialchars($_SERVER["QUERY_STRING"])));

	}



	// ======= TRY TO EXECUTE ANY ASSOCIATED EVENTS =======

	if (!$events->triggerEvent(EVENT_CLIENT))

	{

		// Load main page

		require_once ("./modules/core/client_index.php");

	}

}

?>

Open in new window

0
 
LVL 6

Assisted Solution

by:collins23
collins23 earned 100 total points
ID: 33725700
this appears to be the file with what you want.


require_once ("./modules/core/client_index.php");
0
 
LVL 3

Expert Comment

by:CvD
ID: 33725755
When you only need to change icons,
open the web page,
view its source,
find the icon you want to change,
go to the server,
find the image,
copy the image to another filename,
edit the original image file,
reload the webpage.
As you can see, no fuss or difficulty.
0
 

Author Comment

by:akbiro
ID: 33725771
Ok...I found that.  Now, how do I view it to work on it.  Do I need a special editor.  How did you know where to find this new file
0
 

Author Comment

by:akbiro
ID: 33725792
CVD, that is good, but I need to change the link, the menu bar at the bottom and the verbiage that goes along with it...so it is easy, but a bit more than just changing icons...thanks
0
Highfive + Dolby Voice = No More Audio Complaints!

Poor audio quality is one of the top reasons people don’t use video conferencing. Get the crispest, clearest audio powered by Dolby Voice in every meeting. Highfive and Dolby Voice deliver the best video conferencing and audio experience for every meeting and every room.

 
LVL 108

Assisted Solution

by:Ray Paseur
Ray Paseur earned 100 total points
ID: 33726016
No special editor needed - you can do it with Notepad if you want.  But you might want to learn something about PHP before you start changing code that already works!  Here are some good learning resources.  First, order this book:
http://www.sitepoint.com/books/phpmysql4/

Then give yourself some time with the PHP online web site.
http://us2.php.net/manual/en/getting-started.php
http://us2.php.net/tut.php
http://www.php.net/links.php

Next, you are probably aware that you're not just dealing with PHP, you're working in a framework.  This search will point you to learning resources for that:
http://lmgtfy.com?q=kayako+swift+framework

Good luck, ~Ray
0
 
LVL 3

Expert Comment

by:CvD
ID: 33726123
Ok, I  always use a text editor, that is able to search in directories (UltraEdit).

In the browser view the source and find the link you want to change.
Open your texteditor and let it find that link in the servers root directory.
Open the textfile (if found) and change the link.
If you can't find it in any text file, have a look in the database. The link might be in there. If so, the change should be made in the database.
0
 

Author Comment

by:akbiro
ID: 33726228
Let me give it a whirl
0
 

Author Comment

by:akbiro
ID: 33726694
Ok...I am starting to get it...

This is the code from the browser view and I want to find this widget, or page on the server.
Where would I go:


<!-- BEGIN WIDGET: Troubleshooter --> 

			<td width="50%"><table cellspacing="3" cellpadding="1" width="100%" border="0"> 

              <tbody> 

                <tr> 

                  <td valign="top" width="15" nowrap><a href="index.php?_m=troubleshooter&_a=view"><img src="http://65.111.176.231/themes/client_default/troubleshooter.gif" border="0"></a></td> 

                  <td width="98%" align="left" valign="top"><strong><a href="index.php?_m=troubleshooter&_a=view" id="moduletitle">Troubleshooter</a></strong><br /> 

					<span class="smalltext">Use troubleshooter wizards to diagnose and resolve common problems.</span></td> 

                </tr> 

              </tbody> 

            </table></td> 

			<!-- END WIDGET: Troubleshooter --> 

Open in new window

0
 
LVL 3

Expert Comment

by:CvD
ID: 33726951
First you must find in which php program the link you are looking for is mentioned (I suspect you are looking to change the reference to troubleshooter.gif).
Next, open the php file in a text editor and change the link in there to the one you want it to be.
Next save the php file.
Lastly reload the page in your browser.
0
 

Author Comment

by:akbiro
ID: 33727016
Ok...so in the case above, the location link I want to change is:

index.php?_m=troubleshooter&_a=view

and the image link is

http://65.111.176.231/themes/client_default/troubleshooter.gif

I got it MON
0
 

Author Comment

by:akbiro
ID: 33727105
Ok...I see what to change in the code to redirect the link and to replace the image.  

I traced the path from the index.php to the code below, the widget.  Is the link here and if it is, can you show it to me.
// ======= TROUBLESHOOTER =======

if ($module->isRegistered(MODULE_TROUBLESHOOTER) && $_SWIFT["settings"]["tr_enableclient"] == 1 && $_SWIFT["user"]["permissions"]["perm_canviewtroubleshooter"] != "0")

{

	$_widgets[$index]["icon"] = $_SWIFT["themepath"]."troubleshooter.gif";

	$_widgets[$index]["title"] = $_SWIFT["language"]["troubleshooter"];

	$_widgets[$index]["description"] = $_SWIFT["language"]["desc_troubleshooter"];

	$_widgets[$index]["link"] = "index.php?_m=troubleshooter&_a=view";



	$template->assign("cansearch", true);

	$template->assign("trcansearch", true);



	$index++;

}

Open in new window

0
 
LVL 3

Accepted Solution

by:
CvD earned 200 total points
ID: 33732029
What I can see from here it should be revolving around this line:
$_widgets[$index]["icon"] = $_SWIFT["themepath"]."troubleshooter.gif";

Now left's explain something. Variables in php always start with $. Arrays are recognized by there square brackets. So the key element is the array element $_SWIFT["themepath"] since it holds the directoryname where troubleshooter.gif resides.

a. Find the php file that initializes the array element $_SWIFT["themepath"]. It probably resides in some config.php file, but I wouldn't be surprised if it is stored in the database.
b. If in config file: Open that php file, change the initialization to your liking and save the file again.
    if in database: Use a tool or a SQL statement to change the themepath in the database.
c. In the current php file, change the image file name to your liking. This has to be done here, since the name is hardcoded.

Now for the link. The link will start index.php again and feed it some parameters. This works exactly as you would do in HTML. Now, in index.php have a look at what is done with input parameters and search for the values troubleshooter and view. If you have found them, have a look at what actions are taken based upon these values. I wouldn't be surprised if we have to make some modifications there aswell.
0
 

Author Comment

by:akbiro
ID: 33733259
it's finished...what's up
0
 
LVL 3

Expert Comment

by:CvD
ID: 33738884
no problem here
0

Featured Post

How your wiki can always stay up-to-date

Quip doubles as a “living” wiki and a project management tool that evolves with your organization. As you finish projects in Quip, the work remains, easily accessible to all team members, new and old.
- Increase transparency
- Onboard new hires faster
- Access from mobile/offline

Join & Write a Comment

Consider the following scenario: You are working on a website and make something great - something that lets the server work with information submitted by your users. This could be anything, from a simple guestbook to a e-Money solution. But what…
Part of the Global Positioning System A geocode (https://developers.google.com/maps/documentation/geocoding/) is the major subset of a GPS coordinate (http://en.wikipedia.org/wiki/Global_Positioning_System), the other parts being the altitude and t…
Learn how to match and substitute tagged data using PHP regular expressions. Demonstrated on Windows 7, but also applies to other operating systems. Demonstrated technique applies to PHP (all versions) and Firefox, but very similar techniques will w…
This tutorial will teach you the core code needed to finalize the addition of a watermark to your image. The viewer will use a small PHP class to learn and create a watermark.

747 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

12 Experts available now in Live!

Get 1:1 Help Now