php-install Digest 11 Apr 2002 13:13:38 -0000 Issue 786
Topics (messages 6620 through 6629): Re: php and POST 6620 by: Matt 'php_value not allowed here' in apache log 6621 by: Rick Watts Re: display the file in directory 6622 by: Browning Nathan P SrA 509 CS/SCNO Re: apache 2 install problems? 6623 by: Andy Smith Despite correct setup, PHP pages returning blank screens 6624 by: Ian Daye 6625 by: Ian Daye OO-PHP Style question 6626 by: Alok K. Dhir Undefined Symbol: ldap_parse_reference in PHP 4.1.2 6627 by: crobinso.fit.edu Solaris 8 + Php 4.1.2 + apache 1.3.24 6628 by: Todd Mortensen Problem with installing php-4.1.2 6629 by: muxa.narvajok.pv.ee 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 ---If you changed the php.ini to set the register_globals to on, did you also restart apache? I'm sure you are aware that register globals is now turned off by default in php 4.1+. Look at phpinfo() and make sure register_globals is *really* on. You really ought to be writing code with $_POST[], read http://www.php.net/manual/en/security.php to see why. ----- Original Message ----- From: "Not Telling You!" <[EMAIL PROTECTED]> To: <[EMAIL PROTECTED]> > But I cannot use passed variables. I can however print what > was passed using... > > printf("%s", $HTTP_POST_VARS["name"]); > > That works fine, I'm just unable to just call $name. The php code does > work as it is currently running on a RH 7.1 box with Apache 1.3.20 and > php 4.0.6.--- End Message ---
--- Begin Message ---Hi, I have an 'out of the box' install of Suse Linux 7.2 with Apache 1.3.19 and PHP 4.0.4pl1. I'm trying to set the include path for files served from domain_name/~user directories but get the 'Internal Server Error' when I add php_value include_path .:/home/user/php_include as the only line in my .htaccess file and I get 'php_value not allowed here' in my server's error log. In /etc/httpd/httpd.conf I have added the lines <Directory /home/*/public_html> AllowOverride Options </Directory> but I still get the error. I'm assuming that this is a simple configuration problem, does anyone have any ideas? Rick Watts--- End Message ---
--- Begin Message ---Here's one that I put together. It's browseable and easy on the eyes. It's not the prettiest code but it works. <? // I have PHP 4.1.0 which needs this error_reporting(E_ERROR); // path to your web root (don't put trailing slash /) $web_path = "/inetpub/wwwroot"; // If they try to get to the root directory redirect them to $web_path if ($path == "/"): $path = ""; endif; // If the directory doesn't exist redirect them to $web_path if (!file_exists("$web_path" . "$path")): $path = ""; endif; $dir = opendir("$web_path" . "$path"); // Print the $file_name (s) $msg = "<table width=\"600\"> <tr> <td valign=\"top\" bgcolor=\"#C6C6FF\"><B>Files in $web_path$path</b></td></tr> <tr><td> </td></tr> <tr> <td valign=\"top\"><ul>\n"; while ($file_name = readdir($dir)): // Check to see if it's a directory. $is_dir = is_dir("$web_path" . "$path/$file_name"); // Skip if the file_name returned is "." or ".." if (($file_name != ".") && ($file_name != "..")): // If it's not a directory then add it to the $files variable and assign it class=file (this class we put in the style.css) if ($is_dir != "1"): $files .= "<li class=\"file\"><a href=\"$path/$file_name\" target=\"blank\" title=\"View $file_name\">$file_name</a>\n"; else: // If it's not a directory then add it to the $folders variable and assign it class=dir (this class we put in the style.css) $folders .= "<li class=\"dir\"><a href=\"$PHP_SELF?path=$path/$file_name\" title=\"Go to $file_name directory\">$file_name</a>\n"; // End if ($is_dir) endif; // End if (($file_name != ".") && ($file_name != "..")) endif; // End while reading directory endwhile; // Put the $folders and $files variables together so folders show up first. $msg .= $folders . $files; // If there's no list items then the dir is empty. if ((preg_match("/<li class=\"file/", $msg)) || (preg_match("/<li class=\"dir/", $msg))): $msg .= "</ul>"; else: $msg .= "</ul><P>This directory is empty.</p>"; endif; $msg .= "<P><a href=\"Javascript:history.go(-1)\">Back</a></p></td></tr> </table>"; closedir($dir); ?> <html> <head> <title>Browse Files in <? echo "$web_path" . "$path"; ?></title> <link rel="stylesheet" href="/style.css" type="text/css"> </head> <body> <? echo $msg; ?> </body> </html> Here's the contents of style.css li.dir { list-style: url(/images/folder.gif) disc } li.file { list-style: url(/images/file.gif) disc } I attached file.gif and folder.gif. Hope this helps. v/r, NATHAN BROWNING, SrA, USAF 509 CS/SCNO NCC Operations DSN 975-5267 Comm (660) 687-5267 "The real art of conversation is not only to say the right thing at the right time, but also to leave unsaid the wrong thing at the tempting moment." -----Original Message----- From: Phil Huynh [mailto:[EMAIL PROTECTED]] Sent: Wednesday, April 10, 2002 8:29 AM Cc: [EMAIL PROTECTED] Subject: [PHP-INST] display the file in directory Hi, I am trying to read the files in the directory and display them . but I got the message " the document contain no data " this is my code <? $d = dir("/export/home/phuy/www/test/upload"); echo "Handle: ".$d->handle."<br>"; echo "Path: ".$d->path."<br>"; while($entry=$d->read()) { echo $entry."<br>\n"; } echo "<hr>"; $d->close(); ?> Can anyone tell me what should I do to correct it. I would like some help, thank in advance. -- PHP Install Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php--- End Message ---
--- Begin Message ---On Wed, Apr 10, 2002 at 12:36:25AM +0100, Andy Smith wrote: > php does appear to build and install OK, but once the AddModule and > LoadModule lines are added to httpd.conf, the server segfaults on > startup. strace shows the following: I've since tried this again with CVS apache 2 and CVS PHP and get the same behaviour. > . > . > . > open("/usr/local/apache2/conf/mime.types", O_RDONLY) = 8 > fstat64(8, {st_mode=S_IFREG|0644, st_size=12322, ...}) = 0 > read(8, "# This is a comment. I love comm"..., 4096) = 4096 > read(8, "tool-message\napplication/vnd.gro"..., 4096) = 4096 > read(8, "on/vnd.wt.stf\napplication/vnd.xa"..., 4096) = 4096 > read(8, "ovie\nx-conference/x-cooltalk\t\tic"..., 4096) = 34 > read(8, "", 4096) = 0 > close(8) = 0 > semget(IPC_PRIVATE, 1, IPC_CREAT|0x180|0600) = 589831 > semctl(589831, 0, 0x110 /* SEM_??? */, 0xbffff6b8) = 0 > getcwd("/", 4095) = 2 > --- SIGSEGV (Segmentation fault) ------ End Message ---
msg05418/pgp00000.pgp
Description: PGP signature
--- Begin Message ---I am running Apache 1.3.20 (Win32) PHP/4.1.3-dev mod_perl/1.25_01-dev mod_ssl/2.8.4 OpenSSL/0.9.6a on Windows XP Professional. I have followed the installation instructions (modifying httpd.conf and copying necessary files), but I am getting blank returns on all PHP pages. Please help. Thanks Ian Daye--- End Message ---
--- Begin Message ---I am running Apache 1.3.20 (Win32) PHP/4.1.3-dev mod_perl/1.25_01-dev mod_ssl/2.8.4 OpenSSL/0.9.6a on Windows XP Professional. I have followed the installation instructions (modifying httpd.conf and copying necessary files), but I am getting blank returns on all PHP pages. Please help. Thanks Ian Daye--- End Message ---
--- Begin Message ---Given an app with the following overall class structure: Base.class { function Base() { ##initialize stuff } } A.class extends Base { var $var; var $b; function A() { $var="x"; $b=new B.class(); } } B.class extends Base { var $y; function B() { $y="something"; ##How do I refer to $var in A } } Now, how would/could an instance of B get to a variable in A (i.e. the calling class). One (seemingly rather ugly) way is to declare the A instance global and refer to that from within B. I.e. <? global $x $x=new A; ## now we can say something like "$x->var" from within B ?> Or, another way is to pass a reference to A in with the call to B - so we'd change the class defs for A and B to look like: A.class extends Base { var $var; var $b; function A() { $var="x"; $b=new B.class($this); //pass a ref to myself } } B.class extends Base { var $a; var $y; function B(&$a) { //always take this arg as a reference $y="something"; // now $a contains a ref to the calling object echo $a->var; } } Am I thinking about this correctly? Am I missing some obvious language contruct which would obviate the need for A to pass itself as an arg to the instantiation of B? Is my object structure completely naive? In the second case, what happens after you serialize and unserialize an A object as in a session? Will The instance of B called $b in the A object still contain a _reference_ to the A object in it's $a var, or will it now have a _copy_? I'm trying to get an idea of best practices for these types of issues. Any comments/discussion is very much appreciated. Al--- End Message ---
--- Begin Message ---Environment: Solaris 8 gcc 2.95.3 Shell: tcsh Trying to compile Apache w/ mod_SSL+PHP+LDAP. cd mod_ssl-2.8.8-1.3.24 ./configure --with-apache=../apache_1.3.24 cd apache_1.3.24 ./configure --prefix=/opt/software cd ../php-4.1.2 ./configure --with-apache=../apache_1.3.24 --with-openssl --with-ldap --enable-track-vars make make install cd ../apache_1.3.24 set SSL_BASE=../openssl-0.9.6c; ./configure --prefix=/opt/software --activate-module=src/modules/php4/libphp4.a --enable-module=ssl make It errors on the make for apache. Error Message: Undefined first referenced symbol in file ldap_parse_reference modules/php4/libphp4.a(ldap.o) ld: fatal: Symbol referencing errors. No output written to httpd I am tried the Solaris LDAP libraries and compiled the OpenLDAP 2.0.23 libraries in a different location w/ the compile option --with-ldap=/opt/software for php. But, make errored on the same spot and had an extra undefined symbol with ldap_initialize in the same module. I compiled OpenLDAP with these options: ./configure --prefix=/opt/software --with-tls --disable-slapd --disable-slurpd make depend make make install -- Curtis Robinson [EMAIL PROTECTED]--- End Message ---
--- Begin Message ---I am having trouble getting apache to load the php4 module. Here is the error and output of ldd -r on the php module. todd@svlecs01:~/src/php-4.1.2$sudo apachectl start Syntax error on line 205 of /usr/local/apache/conf/httpd.conf: Cannot load /usr/local/apache/libexec/libphp4.so into server: ld.so.1: /usr/local/apache/bin/httpd: fatal: relocation error: file /usr/local/apache/libexec/libphp4.so: symbol ap_block_alarms: referenced symbol not found /usr/local/apache/bin/apachectl start: httpd could not be started todd@svlecs01:~/src/php-4.1.2$ldd -r /usr/local/apache/libexec/libphp4.so libdl.so.1 => /usr/lib/libdl.so.1 libcrypt_i.so.1 => /usr/lib/libcrypt_i.so.1 libresolv.so.2 => /usr/lib/libresolv.so.2 libsocket.so.1 => /usr/lib/libsocket.so.1 libpam.so.1 => /usr/lib/libpam.so.1 libmm.so.11 => /usr/local/lib/libmm.so.11 libmysqlclient.so.10 => /usr/local/mysql/lib/mysql/libmysqlclient.so.10 libm.so.1 => /usr/lib/libm.so.1 libc.so.1 => /usr/lib/libc.so.1 libgcc_s.so.1 => /usr/local/lib/libgcc_s.so.1 libgen.so.1 => /usr/lib/libgen.so.1 libnsl.so.1 => /usr/lib/libnsl.so.1 libz.so.1 => /usr/lib/libz.so.1 libmp.so.2 => /usr/lib/libmp.so.2 symbol not found: ap_block_alarms (/usr/local/apache/libexec/libphp4.so) symbol not found: ap_unblock_alarms (/usr/local/apache/libexec/libphp4.so) /usr/platform/SUNW,Ultra-250/lib/libc_psr.so.1 symbol not found: ap_user_id (/usr/local/apache/libexec/libphp4.so) symbol not found: ap_server_root (/usr/local/apache/libexec/libphp4.so) symbol not found: ap_group_id (/usr/local/apache/libexec/libphp4.so) symbol not found: ap_user_name (/usr/local/apache/libexec/libphp4.so) symbol not found: top_module (/usr/local/apache/libexec/libphp4.so) symbol not found: ap_max_requests_per_child (/usr/local/apache/libexec/libphp4.so) symbol not found: ap_table_get (/usr/local/apache/libexec/libphp4.so) symbol not found: ap_update_mtime (/usr/local/apache/libexec/libphp4.so) symbol not found: ap_kill_timeout (/usr/local/apache/libexec/libphp4.so) symbol not found: ap_uudecode (/usr/local/apache/libexec/libphp4.so) symbol not found: ap_setup_client_block (/usr/local/apache/libexec/libphp4.so) symbol not found: ap_add_cgi_vars (/usr/local/apache/libexec/libphp4.so) symbol not found: ap_getword (/usr/local/apache/libexec/libphp4.so) symbol not found: ap_getword_nulls_nc (/usr/local/apache/libexec/libphp4.so) symbol not found: ap_destroy_sub_req (/usr/local/apache/libexec/libphp4.so) symbol not found: ap_pstrdup (/usr/local/apache/libexec/libphp4.so) symbol not found: ap_log_error (/usr/local/apache/libexec/libphp4.so) symbol not found: ap_table_add (/usr/local/apache/libexec/libphp4.so) symbol not found: ap_sub_req_lookup_uri (/usr/local/apache/libexec/libphp4.so) symbol not found: ap_run_sub_req (/usr/local/apache/libexec/libphp4.so) symbol not found: ap_register_cleanup (/usr/local/apache/libexec/libphp4.so) symbol not found: ap_signal (/usr/local/apache/libexec/libphp4.so) symbol not found: ap_send_http_header (/usr/local/apache/libexec/libphp4.so) symbol not found: ap_block_alarms (/usr/local/apache/libexec/libphp4.so) symbol not found: ap_child_terminate (/usr/local/apache/libexec/libphp4.so) symbol not found: ap_set_etag (/usr/local/apache/libexec/libphp4.so) symbol not found: ap_rwrite (/usr/local/apache/libexec/libphp4.so) symbol not found: ap_table_set (/usr/local/apache/libexec/libphp4.so) symbol not found: ap_get_client_block (/usr/local/apache/libexec/libphp4.so) symbol not found: ap_add_version_component (/usr/local/apache/libexec/libphp4.so) symbol not found: ap_hard_timeout (/usr/local/apache/libexec/libphp4.so) symbol not found: ap_rflush (/usr/local/apache/libexec/libphp4.so) symbol not found: ap_set_last_modified (/usr/local/apache/libexec/libphp4.so) symbol not found: ap_reset_timeout (/usr/local/apache/libexec/libphp4.so) symbol not found: ap_unblock_alarms (/usr/local/apache/libexec/libphp4.so) symbol not found: ap_add_common_vars (/usr/local/apache/libexec/libphp4.so) todd@svlecs01:~/src/php-4.1.2$cat config.nice #! /bin/sh # # Created by configure './configure' \ '--with-mysql=/usr/local/mysql' \ '--enable-trans-sid' \ '--with-apxs' \ '--with-mm=/usr/local/lib' \ "$@" I know this is a apache symbol but how can I fix this? Thanks.--- End Message ---
--- Begin Message ---Hello. I tried to install php-4.1.2 with apache 2.0.35. So, i got both and began to install. configured apache : --enable-module=so to /www then as usual, make and install. all works fine. so began to installing php: configure --with-pgsql --with-apxs=/www/bin/apxs then make got following error messages: sapi_apache.c: In function `apache_php_module_main': sapi_apache.c:81: `NOT_FOUND' undeclared (first use in this function) sapi_apache.c:81: (Each undeclared identifier is reported only once sapi_apache.c:81: for each function it appears in.) make[3]: *** [sapi_apache.lo] Error 1 So, tried to replace the NOT_FOUND in sapi_apache.c this file compiled well after that, but in others appeared many more errors, which broke the compiling process. I think that maybe the the php i trying to compile for apache is too new.. Im using mandrake i dont think that there is anything to do with distribution. or linux. but who knows. maybe im mistaking. sincirely yours. Muxa. beginner in php--- End Message ---