php-general Digest 31 Aug 2005 20:15:30 -0000 Issue 3656
Topics (messages 221634 through 221664):
Re: security while building online store
221634 by: dino.php.co.ba
221635 by: Shafiq Rehman
Re: (Yet another) I'm blind ... post
221636 by: Mark Rees
221637 by: Murray . PlanetThoughtful
221646 by: John Nichel
Mktime strange
221638 by: Hal 9001 Consulting
221639 by: Robin Vickery
stupid (HTML) question
221640 by: William Stokes
221641 by: Jay Blanchard
221642 by: François-Xavier LACROIX
221647 by: Jesper Gran
221651 by: Raz
String format problem
221643 by: Ahmed Abdel-Aliem
221645 by: Robin Vickery
221653 by: Philip Hallstrom
221654 by: tg-php.gryffyndevelopment.com
221657 by: Satyam
221663 by: Jim Moseby
time zone problem
221644 by: Sergey
221660 by: Satyam
Re: SPL Countable count() not being called
221648 by: Justin Francis
221649 by: Jay Blanchard
[suspicious - maybe spam] RE: [suspicious - maybe spam] PHP/MySQL/XmlHTTPRequest
221650 by: Miguel Guirao
Writing to a text file
221652 by: JesterXL
running process in the background
221655 by: Georgi Ivanov
221659 by: Jordan Miller
Re: upload file - clients path to file?
221656 by: cron.odi.com.br
weird results from imagettfbbox()
221658 by: Aaron Todd
221662 by: Philip Hallstrom
Making Text [not the background] transparent
221661 by: Graham Anderson
Nested IFs Problem
221664 by: Albert Padley
Administrivia:
To subscribe to the digest, e-mail:
[EMAIL PROTECTED]
To unsubscribe from the digest, e-mail:
[EMAIL PROTECTED]
To post to the list, e-mail:
[email protected]
----------------------------------------------------------------------
--- Begin Message ---
[EMAIL PROTECTED] wrote:
kat
Dzesi momak ;)
I think you know PHP enough to make your code secure.
Just take care (as Christian wrote)about sql-injections and
register_globals.
The biggest problem could be Linux/Apache/MySQL server security threat...
---
avast! Antivirus: Outbound message clean.
--- End Message ---
--- Begin Message ---
You must read the articles by shiflet
http://www.phpgurru.com/index.php?acion=paging&chid=www.shiflett.org&offset=10
On 8/31/05, [EMAIL PROTECTED] <[EMAIL PROTECTED]> wrote:
>
> [EMAIL PROTECTED] wrote:
> > kat
>
> Dzesi momak ;)
>
> I think you know PHP enough to make your code secure.
> Just take care (as Christian wrote)about sql-injections and
> register_globals.
>
> The biggest problem could be Linux/Apache/MySQL server security threat...
>
>
> ---
> avast! Antivirus: Outbound message clean.
>
> --
> PHP General Mailing List (http://www.php.net/)
> To unsubscribe, visit: http://www.php.net/unsub.php
>
>
--
*** phpgurru.com <http://phpgurru.com> [A php resource provider] ***
\\\|///
\\ - - //
( @ @ ) PHP is too logical for my brain
+---oOOo-(_)-oOOo------------------------------------------+
| Mian Shafiq ur Rehman
| phpgurru.com <http://phpgurru.com> [A php resource provider]
| 107 B, New Town, Multan Road
| Lahore Pakistan
|
| Mobile: 0300 423 9385
|
| ooo0 http://www.phpgurru.com
| ( ) 0ooo E-Mail: [EMAIL PROTECTED]
+---\ (----( )------------------------------------------+
\_) ) /
(_/
--- End Message ---
--- Begin Message ---
"Martin S" <[EMAIL PROTECTED]> wrote in message
news:[EMAIL PROTECTED]
> In this code, I'm not getting the value of $list passed to the Mailman
page.
> I've checked this umpteen times by now, but fail to see the error. I've
$list is not to be found in this code sample. $lista is though.
> beaten myself suitably with a steel ruler -- but it didn't help. Nor does
> the cold I'm coming down with I suppose.
>
> Anyone see the error, and feel like pointing it out to me?
>
> Martin S
>
> <?php
> print "<H2><B>Join the lists</b></H2>";
> print "<FORM Method=POST
> ACTION='http://www.bollmora.org/mailman/subscribe/' . $lista . '><br>'";
> print "Your E-mail address: <INPUT type=\"Text\" name=\"email\"
size=\"30\"
> value=\"\"><br>";
> print "Your Name (optional): <INPUT type=\"Text\" name=\"fullname\"
> size=\"30\" value=\"\"><br><br>";
> print "Lista: <select name=\"lista\" />";
> print "<option value=\"tvl_bollmora.org\">Tävling</option>";
> print "<option value=\"jpg_bollmora.org\">JGP</option>";
> print "<option value=\"styrelse_bollmora.org\">Styrelse</option>";
> print "</select><br>";
> print "You may enter a privacy password below. This provides only mild
> security, but should<br>
> prevent others from messing with your subscription. <b>Do not use a
> valuable password</b> as it<br>
> will occasionally be emailed back to you in cleartext.<br><br>
> If you choose not to enter a password, one will be automatically
generated
> for you, and it will<br>
> be sent to you once you've confirmed your subscription. You can always
> request a mail-back<br>
> of your password when you edit your personal options.<br><br>";
> print "Would you like to receive list mail batched in a daily digest?
(You
> may choose NoMail after you join.)<BR><br>";
> print "<input type=radio name=\"digest\" value=\"0\" CHECKED> No <input
> type=radio name=\"digest\" value=\"1\"> Yes<br><br>";
> print "<INPUT type=\"Submit\" name=\"email-button\"
value=\"Subscribe\">";
> print "</FORM>";
> ?>
--- End Message ---
--- Begin Message ---
> In this code, I'm not getting the value of $list passed to the Mailman
> page.
> I've checked this umpteen times by now, but fail to see the error. I've
> beaten myself suitably with a steel ruler -- but it didn't help. Nor does
> the cold I'm coming down with I suppose.
>
> Anyone see the error, and feel like pointing it out to me?
>
> Martin S
Hi Martin,
Try checking for the value in $_POST['lista'] on your subscribe page.
Failing that, try the following:
print_r($_POST);
This should give you all the variables and values being sent by the form to
the page being used to process that form.
Hope this helps.
Much warmth,
Murray
---
"Lost in thought..."
http://www.planetthoughtful.org
--- End Message ---
--- Begin Message ---
Martin S wrote:
In this code, I'm not getting the value of $list passed to the Mailman page.
I've checked this umpteen times by now, but fail to see the error. I've
beaten myself suitably with a steel ruler -- but it didn't help. Nor does
the cold I'm coming down with I suppose.
Anyone see the error, and feel like pointing it out to me?
Martin S
<?php
print "<H2><B>Join the lists</b></H2>";
print "<FORM Method=POST
ACTION='http://www.bollmora.org/mailman/subscribe/' . $lista . '><br>'";
<snip>
$list or $lista?
--
John C. Nichel
ÜberGeek
KegWorks.com
716.856.9675
[EMAIL PROTECTED]
--- End Message ---
--- Begin Message ---
Hello,
I've got a problem with mktime. It's a very strange behaviour, I don't know
if is a bug:
echo date ("M-d-Y", mktime (0,0,0,07,07,2005)); -> Jul-07-2005 (right)
echo date ("M-d-Y", mktime (0,0,0,08,07,2005)); -> Dec-07-2004 (?????????)
Can anyone help me to solve this question? Is it a bug?
Regards
--- End Message ---
--- Begin Message ---
On 8/31/05, Hal 9001 Consulting <[EMAIL PROTECTED]> wrote:
> Hello,
>
> I've got a problem with mktime. It's a very strange behaviour, I don't know
> if is a bug:
>
>
> echo date ("M-d-Y", mktime (0,0,0,07,07,2005)); -> Jul-07-2005 (right)
> echo date ("M-d-Y", mktime (0,0,0,08,07,2005)); -> Dec-07-2004 (?????????)
>
> Can anyone help me to solve this question? Is it a bug?
Numbers with leading zeros are octal. 08 is not a valid octal number,
and is interpreted as 0.
The solution is to not use leading zeros...
echo date ("M-d-Y", mktime (0,0,0,8,7,2005)); -> Aug-07-2005
-robin
--- End Message ---
--- Begin Message ---
Embarrassed to ask but how to vertically align a table to a middle of a
page?
Forgot... ...didn't even find it with even Dreamweaver...
:-0
-Will
--- End Message ---
--- Begin Message ---
[snip]
Embarrassed to ask but how to vertically align a table to a middle of a
page?
[/snip]
Use CSS.
--- End Message ---
--- Begin Message ---
I don't think you can do a vertical centering.
but you can specify a margin-top value to your table...
fx
Embarrassed to ask but how to vertically align a table to a middle of a
page?
Forgot... ...didn't even find it with even Dreamweaver...
:-0
-Will
--
François-Xavier LACROIX http://www.clever-age.com
Clever Age - conseil en architecture technique
GSM: +33 6 11 03 23 77 - Tél: +33 1 53 34 66 10
Clever Age vous invite à ses petits-déjeuners du Jeudi
http://www.clever-age.com/actualites/petits-dejeuners/
--- End Message ---
--- Begin Message ---
An easy way to center a table, is to put it in another table:
<table border="1" width="100%" height="100%">
<tr>
<td align="center" valign="middle">
<table border="1"><tr><td>Hello</td><td>world</td></tr></table>
</td>
</tr>
</table>
/Jesper
--- End Message ---
--- Begin Message ---
Will
As suggested by Monsieur Jay, a bit of CSS...
....
<style type="text/css">
.centerTable {
text-align: center;
}
.centerTable table {
position: absolute;
top: 50%;
left: 50%;
width: tableWidth;
height: tableHeight;
margin-left: -(tableWidth/2)px;
margin-top: -(tableHeight/2)px;
}
</style>
.....
<div class="centerTable">
<table border="1">
<tr>
<td>1</td>
<td>2</td>
</tr>
<tr>
<td>3</td>
<td>4</td>
</tr>
</table>
</div>
HTH
Raz
--- End Message ---
--- Begin Message ---
hi
i have a problem when i am formating a string
the problem is it converts the \n in the string to a new line
here is the code
<?
$Text = "D:\AppServ\www\intranet\admin\store\nodirectory\sub";
$Replace = "D:\AppServ\www\intranet\admin\store";
$with = "http://localhost/bank/admin/store";
//$doc = str_replace ($Replace, $with, $Text);
$doc = str_replace( '\\', '/', str_replace( $Replace, $with, $Text ) );
echo $doc;
//i need $Doc to look like this
http://localhost/bank/admin/store/nodirectory/sub
//but it outputs http://localhost/bank/admin/store odirectory/sub
?>
can any one help me with that plz
thanks in advance
--
Ahmed Abdel-Aliem
Web Developer
www.SafariStudio.net
+20101108551
registered Linux user number 382789
--- End Message ---
--- Begin Message ---
On 8/31/05, Ahmed Abdel-Aliem <[EMAIL PROTECTED]> wrote:
> hi
> i have a problem when i am formating a string
> the problem is it converts the \n in the string to a new line
> here is the code
>
> <?
> $Text = "D:\AppServ\www\intranet\admin\store\nodirectory\sub";
> $Replace = "D:\AppServ\www\intranet\admin\store";
> $with = "http://localhost/bank/admin/store";
Don't use double quotes if you don't want escape sequences to be expanded.
$Text = 'D:\AppServ\www\intranet\admin\store\nodirectory\sub';
$Replace = 'D:\AppServ\www\intranet\admin\store';
$with = 'http://localhost/bank/admin/store';
-robin
--- End Message ---
--- Begin Message ---
hi
i have a problem when i am formating a string
the problem is it converts the \n in the string to a new line
here is the code
<?
$Text = "D:\AppServ\www\intranet\admin\store\nodirectory\sub";
$Replace = "D:\AppServ\www\intranet\admin\store";
$with = "http://localhost/bank/admin/store";
//$doc = str_replace ($Replace, $with, $Text);
$doc = str_replace( '\\', '/', str_replace( $Replace, $with, $Text ) );
echo $doc;
//i need $Doc to look like this
http://localhost/bank/admin/store/nodirectory/sub
//but it outputs http://localhost/bank/admin/store odirectory/sub
Replace your double quotes with single quotes... that is:
$Text = 'D:\AppServ\www\intranet\admin\store\nodirectory\sub';
$Replace = 'D:\AppServ\www\intranet\admin\store';
$with = 'http://localhost/bank/admin/store';
--- End Message ---
--- Begin Message ---
To elaborate on Philip's response (which is correct)...
Anything in double quotes (" ") will be interpreted by PHP before figuring out
what the actual value is. Items like \n, \t, etc are therefore converted to a
newline (\n) or a tab (\t) before assigning to the variable. Variables within
the double quotes are also evaluated before assigning. So..
$firstname = "Bob";
$lastname = "Smith";
$varname = "$firstname $lastname told me to find the file in folder
C:\newtext\";
echo $varname;
Will yield:
Bob Smith told me to find the file in folder C:
ewtext";
Actually it'll give you an error because the double quotes aren't properly
terminated.. \" is also interpreted.
Whereas..
$varname = '$firstname $lastname told me to find the file in folder
C:\newtext\';
echo $varname;
Yields..
$firstname $lastname told me to find the file in folder C:\newtext\
In this case, you have two options to get what you want:
$varname = "$firstname $lastname told me to find the file in folder
C:\\newtext\\";
..or..
$varname = $firstname . ' ' . $lastname told me to find the file in folder
C:\newtext\';
I've read "never use double quotes unless you have to" because it could
potentially speed up PHP a little because it won't be trying to interpret every
string. I'm not sure exactly how much savings this is going to give you so I
drop this in the "whatever your style dictates" category. I prefer double
quotes because I think it visually delineates the code better and I think
"$firstname $lastname" looks tidier than $firstname . ' ' . $lastname even
though I do consider it slightly looser coding practices. One's better for the
human, one's better for the machine (imo) and since I'm a human..... I think.
:)
-TG
= = = Original message = = =
> hi
> i have a problem when i am formating a string
> the problem is it converts the \n in the string to a new line
> here is the code
>
> <?
> $Text = "D:\AppServ\www\intranet\admin\store\nodirectory\sub";
> $Replace = "D:\AppServ\www\intranet\admin\store";
> $with = "http://localhost/bank/admin/store";
>
> //$doc = str_replace ($Replace, $with, $Text);
> $doc = str_replace( '\\', '/', str_replace( $Replace, $with, $Text ) );
>
> echo $doc;
>
> //i need $Doc to look like this
> http://localhost/bank/admin/store/nodirectory/sub
> //but it outputs http://localhost/bank/admin/store odirectory/sub
Replace your double quotes with single quotes... that is:
$Text = 'D:\AppServ\www\intranet\admin\store\nodirectory\sub';
$Replace = 'D:\AppServ\www\intranet\admin\store';
$with = 'http://localhost/bank/admin/store';
___________________________________________________________
Sent by ePrompter, the premier email notification software.
Free download at http://www.ePrompter.com.
--- End Message ---
--- Begin Message ---
<[EMAIL PROTECTED]> wrote in message
news:[EMAIL PROTECTED]
> To elaborate on Philip's response (which is correct)...
[....]
>
>
> I've read "never use double quotes unless you have to" because it could
> potentially speed up PHP a little because it won't be trying to interpret
> every string.
I once did some trials with thousand repetitions of segments of code with
different alternatives, so let me go through all of them since I have the
numbers anyway. The original was in Spanish so I'll just give the results.
The question started with using echo or print and, as the manual says, echo
is, indeed, faster:
echo "uno $f tres ": 3.04
print "uno $f tres ": 3.70
The numbers after the colons are the execution times of one against the
other for a lot of repetitions, anyhow, they should be read as relative to
one another.
Next, most people don't know that echo accepts multiple arguments separated
by commas. Separating the arguments with commas is faster.
echo 'uno ' . ' dos ' . ' tres ': 1.32
echo 'uno ' , ' dos ' , ' tres ': 0.94
In fact, this is a poor example since the difference gets larger with longer
string and more arguments. When you use dots, the interpreter has to
actually concatenate the string, looking for memory to do so and freeing it
up afterwards. This takes time. With commas, each argument is sent to the
output stream as soon as it is found, no further processing is needed in
between.
Then the single vs. double quotes:
echo 'uno ' , ' dos ' , ' tres ': 0.94
echo "uno " , " dos " , " tres ": 6.76
Once again, these are relative times but it means using double quotes is 7
times slower than single quotes
Several different alternatives with variables involved:
echo 'uno ' . $f . ' tres ': 7.38
echo 'uno ' , $f , ' tres ': 0.80
echo "uno $f tres ": 3.04
echo <<<EOT
uno $f tres
EOT: 3.29
Notice that when variables are involved, the difference in between echoing
with arguments separated with commas and separated with dots is more than 9
times faster for the commas. Using double quotes with variable expansion
is almost 4 times slower than the commas, but is still faster than
concatenating them externaly with dots. Using heredoc-style strings is not
so bad compared to double quotes.
So, if you are sending out the rule would be:
Use echo, not print. Separate arguments with commas.
Now, if you are not using echo, for example, concatenating to a variable,
the best is to use variable expansion inside double quoted or heredoc
strings. Concatenating with dots is more than twice as slow.
Satyam
--- End Message ---
--- Begin Message ---
> hi
> i have a problem when i am formating a string
> the problem is it converts the \n in the string to a new line
> here is the code
>
> <?
> $Text = "D:\AppServ\www\intranet\admin\store\nodirectory\sub";
> $Replace = "D:\AppServ\www\intranet\admin\store";
> $with = "http://localhost/bank/admin/store";
Use single quotes instead of double quotes:
$Text = 'D:\AppServ\www\intranet\admin\store\nodirectory\sub';
$Replace = 'D:\AppServ\www\intranet\admin\store';
$with = 'http://localhost/bank/admin/store';
JM
--- End Message ---
--- Begin Message ---
Hi!
I some problem:
I have visitor's IP, country and city. I need to define his GMT offset.
Have you such database GMT's offsets.
I found many such list in Google but many countries has different GMT's
(Russia - 7!).
Any idea?
--- End Message ---
--- Begin Message ---
Go to:
http://www.timeanddate.com/worldclock/custom.html?cities=51,31,1038,224,179
The numbers at the end are my personal selection of cities I care about, but
you can change it and the cities database is a long one. It is updated for
daylight savings when applicable.
Satyam
""Sergey"" <[EMAIL PROTECTED]> wrote in message
news:[EMAIL PROTECTED]
> Hi!
> I some problem:
> I have visitor's IP, country and city. I need to define his GMT offset.
> Have you such database GMT's offsets.
> I found many such list in Google but many countries has different GMT's
> (Russia - 7!).
> Any idea?
--- End Message ---
--- Begin Message ---
Justin Francis wrote:
I have not been able to get count() to be called when I pass my
Countable class to the count function. I am using PHP 5.1 Release
Candidate 1. I am not sure if it is a bug, so I am posting here to see
if anyone can help.
--------------------------
class Collection implements Countable
{
public function count()
{
return 200;
} }
$c = new Collection();
echo(count($c));
----------------------------
This code prints 1 out with no errors, when it should print out 200.
Any ideas?
In case anyone was wondering, I downloaded the latest cvs snapshot, and
this bug has been fixed.
Justin
--- End Message ---
--- Begin Message ---
[snip]
> ----------------------------
> This code prints 1 out with no errors, when it should print out 200.
>
> Any ideas?
>
In case anyone was wondering, I downloaded the latest cvs snapshot, and
this bug has been fixed.
[/snip]
Bug? There is no bug. You counted 1 (one) item, not 200.
--- End Message ---
--- Begin Message ---
there is a book coming out in October I guess, do a search on amazon under
AJAX.
Also, at www.phparch.com the August issue deals with AJAX between other
things. You can buy a digital copy (PDF) for only 3.45 dlls.
Regards,
Chicolinux
-----Original Message-----
From: Death Gauge [mailto:[EMAIL PROTECTED]
Sent: Martes, 30 de Agosto de 2005 02:51 p.m.
To: [email protected]
Subject: [suspicious - maybe spam] PHP/MySQL/XmlHTTPRequest
Where do I go learn about XmlHTTPRequest? I've done googles and all I've
found was stuff about toolkits no tutorials or documents telling how to use
it.
--Death Gauge
"How do you gauge your death?!"
_________________________________________________________________
Express yourself instantly with MSN Messenger! Download today - it's FREE!
http://messenger.msn.click-url.com/go/onm00200471ave/direct/01/
Este mensaje es exclusivamente para el uso de la persona o entidad a quien esta
dirigido; contiene informacion estrictamente confidencial y legalmente
protegida, cuya divulgacion es sancionada por la ley. Si el lector de este
mensaje no es a quien esta dirigido, ni se trata del empleado o agente
responsable de esta informacion, se le notifica por medio del presente, que su
reproduccion y distribucion, esta estrictamente prohibida. Si Usted recibio
este comunicado por error, favor de notificarlo inmediatamente al remitente y
destruir el mensaje. Todas las opiniones contenidas en este mail son propias
del autor del mensaje y no necesariamente coinciden con las de Radiomovil
Dipsa, S.A. de C.V. o alguna de sus empresas controladas, controladoras,
afiliadas y subsidiarias. Este mensaje intencionalmente no contiene acentos.
This message is for the sole use of the person or entity to whom it is being
sent. Therefore, it contains strictly confidential and legally protected
material whose disclosure is subject to penalty by law. If the person reading
this message is not the one to whom it is being sent and/or is not an employee
or the responsible agent for this information, this person is herein notified
that any unauthorized dissemination, distribution or copying of the materials
included in this facsimile is strictly prohibited. If you received this
document by mistake please notify immediately to the subscriber and destroy
the message. Any opinions contained in this e-mail are those of the author of
the message and do not necessarily coincide with those of Radiomovil Dipsa,
S.A. de C.V. or any of its control, controlled, affiliates and subsidiaries
companies. No part of this message or attachments may be used or reproduced in
any manner whatsoever.
--- End Message ---
--- Begin Message ---
I have 2 servers; one running *nix w/ PHP4, and one running Windows 2k w/
PHP5; neither of which give me read permissions to write/create text files.
Apparently, the *nix server has PHP in "Power Mode", but I'm still getting
no love from fopen, and chmod via PHP doesn't work.
Any adivce?
Code skrait from the docs:
// Let's make sure the file exists and is writable first.
if(is_writable($filename))
{
// In our example we're opening $filename in append mode.
// The file pointer is at the bottom of the file hence
// that's where $somecontent will go when we fwrite() it.
if (!$handle = fopen($filename, 'w'))
{
echo("Cannot open file ($filename)<br />");
exit;
}
$somecontent = " ";
// Write $somecontent to our opened file.
if(fwrite($handle, $somecontent) === FALSE)
{
echo("Cannot write to file ($filename)<br />");
exit;
}
echo("Success, wrote ($somecontent) to file ($filename)<br />");
fclose($handle);
}
else
{
echo "The file $filename is not writable<br />";
if (!chmod($filename, 0666))
{
echo "Cannot change the mode of file ($filename)<br />";
exit;
}
}
--- End Message ---
--- Begin Message ---
Hi,
I'm experiencing strange behavior when trying to run background process in
PHP.
Code :
//Run_check.php
foreach ($_POST as $kid){
`php run.php param1 param2 > /dev/null &`;
}
In this case PHP waits all the instances of the process to complete.
I don't understand why.
I have a workaround here, but anyway i don't understand why the above example
doesn't work.
If i don't run the cycle here , but run other file and there run the cycle
that runs the the background processes everything is OK.
------------------------------------
/*This file gets $_POST , implodes it , and passes the string to the other
script */
//Run_check.php
$ids=implode(',',$_POST);
` php run1.php $ids`;
------------------------------------
------------------------------------
/*This script takes the input , explodes it and runs a cycle that runs the
background process*/
//run1.php :
$kwid=explode(',',$argv[1]);
foreach ($kwid as $kid){
`php run.php param1 param 2 > /dev/null &`;
}
------------------------------------
Everything is OK.
--- End Message ---
--- Begin Message ---
Oh wait... you are not specifying your $_POST variable. you need to
use the key for $_POST. just do a print_r($_POST) to find the key
from the $_POST array that you are looking for. also, i would not
pass a $_POST variable directly to your shell without escaping it
somehow, first...
foreach ($_POST[$key] ...
Jordan
Did you try also sending stderr to /dev/null rather than stdout only?
I think the syntax is to add a "2>&1":
foreach ($_POST as $kid){
`php run.php param1 param2 > /dev/null 2>&1 &`;
}
This should put each process in the background and suppress all
errors and output. Does that work?
Jordan
On Aug 31, 2005, at 11:44 AM, Georgi Ivanov wrote:
foreach ($_POST as $kid){
`php run.php param1 param2 > /dev/null &`;
}
--- End Message ---
--- Begin Message ---
Interaction to write to a input file type is denied in browsers not to read
the value so you can can get the full path using JavaScript like any other
input in the form(document.formname.inputname.value) and pass it to other
input field lets say input fullpath using something like
document.formname.fullpath = document.formname.inputname.value <-- all using
javascript
So yes you can get the fullpath however you should redirect your question
to a JavaScript List or perhaps a javascript-php list.
Regards
Angelo
----- Original Message -----
From: "Jasper Bryant-Greene" <[EMAIL PROTECTED]>
To: <[email protected]>
Sent: Tuesday, August 30, 2005 7:14 AM
Subject: Re: [PHP] upload file - clients path to file?
> [EMAIL PROTECTED] wrote:
> > I havent found an answer after looking at the manual. I'm trying to find
> > out if it possible to find the path of the file on the clients pc once
> > a form has been submitted with the file upload form.
> > I know its possible to get the file name but I need the whole path.
> > is this possible?
>
> Not with pure PHP. Maybe with some JavaScript, but most browsers heavily
> limit any interaction with <input type="file"> controls from JavaScript.
> So probably not at all.
>
> --
> Jasper Bryant-Greene
> Freelance web developer
> http://jasper.bryant-greene.name/
>
> If you find my advice useful, please consider donating to a poor
> student! You can choose whatever amount you think my advice was
> worth to you. http://tinyurl.com/7oa5s
>
> --
> PHP General Mailing List (http://www.php.net/)
> To unsubscribe, visit: http://www.php.net/unsub.php
>
>
--- End Message ---
--- Begin Message ---
I have an array of strings in which I am passing to imagettfbbox() in order
to calculate the height of the text box for each string. I am then
subtracting the height from the y position in order to deviate the pivot
point form the top left corner to the bottom left corner when I used
imagettftext() to draw the text on an image. I am giving both commands a
fontsize of 50, an angle of 0 and I am using the font ARIAL.
I am having an issue where the first string comes back with a height of 50
and the next comes back with 47. Then 50 again for the next following
string and then 47 again for the next one foloowing that. It keeps going on
and on like this and I do not understand why. I am using the same font,
font size, and angle for each string so shouldnt they all come back as the
same size?
Here's a snippet of what I am doing:
$file = "this can be any file";
$im = imagecreatefromjpeg($file);
$textcolor = imagecolorallocate($im, 0, 0, 0);
$fontfile = "arial.ttf";
$fontsize = 50;
$arr = split("CR", $_GET['text']);
$boxes = count($arr);
if (preg_match('/[0-9]/', $boxes)){
for($c=0;$c<$boxes;$c++){
$text = stripslashes($arr[$c]);
$y = $fontsize * $c;
$bbox = imagettfbbox($fontsize, 0, $fontfile, $text);
$dy = $bbox[7] - $bbox[1];
$py = $y-$dy;
imagettftext($im, $fontsize, 0, 1, $py, $textcolor, $fontfile, $text);
}
}
header("Content-type: image/jpeg");
imagejpeg($im, "" ,95);
imagedestroy($im);
--- End Message ---
--- Begin Message ---
I have an array of strings in which I am passing to imagettfbbox() in order
to calculate the height of the text box for each string. I am then
subtracting the height from the y position in order to deviate the pivot
point form the top left corner to the bottom left corner when I used
imagettftext() to draw the text on an image. I am giving both commands a
fontsize of 50, an angle of 0 and I am using the font ARIAL.
I am having an issue where the first string comes back with a height of 50
and the next comes back with 47. Then 50 again for the next following
string and then 47 again for the next one foloowing that. It keeps going on
and on like this and I do not understand why. I am using the same font,
font size, and angle for each string so shouldnt they all come back as the
same size?
Is each line of the file the same? It's going to vary depending on what
letters are in the string (ascenders and descenders for letters like
qygpi, etc.).
maybe that's it?
Here's a snippet of what I am doing:
$file = "this can be any file";
$im = imagecreatefromjpeg($file);
$textcolor = imagecolorallocate($im, 0, 0, 0);
$fontfile = "arial.ttf";
$fontsize = 50;
$arr = split("CR", $_GET['text']);
$boxes = count($arr);
if (preg_match('/[0-9]/', $boxes)){
for($c=0;$c<$boxes;$c++){
$text = stripslashes($arr[$c]);
$y = $fontsize * $c;
$bbox = imagettfbbox($fontsize, 0, $fontfile, $text);
$dy = $bbox[7] - $bbox[1];
$py = $y-$dy;
imagettftext($im, $fontsize, 0, 1, $py, $textcolor, $fontfile, $text);
}
}
header("Content-type: image/jpeg");
imagejpeg($im, "" ,95);
imagedestroy($im);
--
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php
--- End Message ---
--- Begin Message ---
How do I make the text transparent over the background ?
In my web app, I want to to put a layer BEHIND the image to control the
color of the php-created text
So, the layer color in the web app shows thru the text php creates....
Would like to use alpha transparency so the color looks clean :)
how would I amend the below script to do this ?
many thanks
g
header("Content-type:".$mime); //$mime = image/png
$im = imagecreatetruecolor(200, 16); //use to draw a text box
imageAlphaBlending($im, true);
imageSaveAlpha($im, true);
$left = 5; //add a little pad to the left edge
$color = imagecolorallocate($im, 255, 255, 255);
$fontSize = 11;
// choose a font
$fontPath = "/home/siren/fonts/";
$defaultFont = "tahomabd.ttf";
$fontName = "arial.ttf";
$font = $fontPath.$fontName ;
if (! file_exists($font)) {
$font = $fontPath.$defaultFont ;
}
$text= "background color shows through the text" // Add the text
imagettftext($im, $fontSize, 0, 10, 13, $color, $font, $text);
imagepng($im);
readfile($im);
imagedestroy($im);
--- End Message ---
--- Begin Message ---
I have the following nested ifs:
if ($row['date'] < '2005-10-02') {
if ($row['time'] < '12:00') {
if ($row['field'] == 'P5' ) {
echo "<td class=\"tabletextbluebg\">Success";
}
}
}
else {
echo "<td class=\"tabletextred\">Failed";
}
</td>
Whenever the 3 if statements are true, I always get the correct
"Success" to echo. However, if any or all of the if statements are
false, I never get "Failed" to echo.
I know it's something simple, but I just can't see it at the moment.
TIA
Albert Padley
--- End Message ---