• [12-Oct-2021 03:42:16 UTC] PHP Parse error: syntax error, unexpected ‘print’ (T_PRINT), expecting identifier (T_STRING) in /wp-content/plugins/contact-form-7/admin/includes/welcome-panel.php on line 9

    My crc checking plugin found 3 new error logs this morning in admin, admin/user and admin network. They all contained the line above. Normally I don’t log into this site more than once a month or so. It’s a static. Tried to log into the site and couldn’t because the login page crashed.

    There has been a critical error on this website. Please check your site admin email inbox for instructions.

    FTP’d into the account, removed cf7. Went into cpanel and realized the site was still on php 5.6. Upgraded to 7.4, uploaded cf7 and it appears to work.

    Is upgrading to 7.4 important? Sure. Crashing the admin login when you don’t? Not so much.

    I’m just guessing there was some automatic update of the plugin this morning.

Viewing 15 replies - 16 through 30 (of 36 total)
  • Thank you @mwhitney9 I see I was missing the /admin/
    Found the file made the edits in Line 9 and Line 223 as @dreich suggested and its now working again.
    Thank you for your help!

    Just want to thank you all and especially @datainterlock for getting a fix and providing it so quickly. Saved me so much hassle!

    Billy

    (@billybrasov)

    i replace it the new welcome-panel.php with other welcome-panel.php from an older version and solve it ??

    Have same error on PHP 5.6.40 (

    I made the update to line 9 and 223 but now it says Parse error: syntax error, unexpected ‘$icon’ (T_VARIABLE), expecting ‘;’ or ‘{‘ in /public_html/wp-content/plugins/contact-form-7/admin/includes/welcome-panel.php on line 10

    Can anyone help? Can’t access the backend of wordpress! Thank you!

    Hey, I also get this error. How do you update the code to fix the problem? I can’t access the code because i’m not able to redirect to wp-admin and controllpanel?
    So I feel a bit stuck?
    Please help. You guys are the best!

    Renaming the welcome-panel.php works. Thank you.

    I added underscore just like in the example below.
    Error is gone, but the contact form on the site is gone also…
    what am I missing???

    Thanks for the solution and explanation, @dreich!
    
    “Probably, print is a reserved word in PHP”
    
    In file welcome-panel.php:
    
    Line 9: Rename function to public function _print()
    Line 223: Rename to $column->_print();

    Just to confirm and clarify instructions which worked for me …

    On Line 9: replace

    print()

    with

    public function _print()

    AND

    On Line 223: replace

    $column->print()

    with

    $column->public function _print()

    HTH

    thanks.
    i rolled back one version and all is good. the only thing that I lost my saved forms
    :(((

    @sallymoos No, line 223, replace “$column->print();” with “$column->_print();”.

    thanks for the fixes… tried to fix it in WordPress –> Plugin-Editor.

    To save the change it gives me following reason:
    “Something went wrong. Your change was probably not saved. Please try again. There is a possibility that you will have to fix the error manually and upload the file via https://FTP.”

    hi all
    I also have the same but when I found file and i DID NOT FIND LINE 9 AND 223
    THIS IS CODE IN FILE welcome-panel.php

    <?php
    
    function wpcf7_welcome_panel() {
    	$classes = 'welcome-panel';
    
    	$vers = (array) get_user_meta( get_current_user_id(),
    		'wpcf7_hide_welcome_panel_on', true );
    
    	if ( wpcf7_version_grep( wpcf7_version( 'only_major=1' ), $vers ) ) {
    		$classes .= ' hidden';
    	}
    
    ?>
    <div id="welcome-panel" class="<?php echo esc_attr( $classes ); ?>">
    	<?php wp_nonce_field( 'wpcf7-welcome-panel-nonce', 'welcomepanelnonce', false ); ?>
    	<a class="welcome-panel-close" href="<?php echo esc_url( menu_page_url( 'wpcf7', false ) ); ?>"><?php echo esc_html( __( 'Dismiss', 'contact-form-7' ) ); ?></a>
    
    	<div class="welcome-panel-content">
    		<div class="welcome-panel-column-container">
    
    			<div class="welcome-panel-column">
    				<h3><span class="dashicons dashicons-shield" aria-hidden="true"></span> <?php echo esc_html( __( "Getting spammed? You have protection.", 'contact-form-7' ) ); ?></h3>
    
    				<p><?php echo esc_html( __( "Spammers target everything; your contact forms aren’t an exception. Before you get spammed, protect your contact forms with the powerful anti-spam features Contact Form 7 provides.", 'contact-form-7' ) ); ?></p>
    
    				<p><?php
    	echo sprintf(
    		/* translators: links labeled 1: 'Akismet', 2: 'reCAPTCHA', 3: 'disallowed list' */
    		esc_html( __( 'Contact Form 7 supports spam-filtering with %1$s. Intelligent %2$s blocks annoying spambots. Plus, using %3$s, you can block messages containing specified keywords or those sent from specified IP addresses.', 'contact-form-7' ) ),
    		wpcf7_link(
    			__( 'https://contactform7.com/spam-filtering-with-akismet/', 'contact-form-7' ),
    			__( 'Akismet', 'contact-form-7' )
    		),
    		wpcf7_link(
    			__( 'https://contactform7.com/recaptcha/', 'contact-form-7' ),
    			__( 'reCAPTCHA', 'contact-form-7' )
    		),
    		wpcf7_link(
    			__( 'https://contactform7.com/comment-blacklist/', 'contact-form-7' ),
    			__( 'disallowed list', 'contact-form-7' )
    		)
    	);
    				?></p>
    			</div>
    
    <?php if ( defined( 'FLAMINGO_VERSION' ) ) : ?>
    			<div class="welcome-panel-column">
    				<h3><span class="dashicons dashicons-megaphone" aria-hidden="true"></span> <?php echo esc_html( __( "Contact Form 7 needs your support.", 'contact-form-7' ) ); ?></h3>
    
    				<p><?php echo esc_html( __( "It is hard to continue development and support for this plugin without contributions from users like you.", 'contact-form-7' ) ); ?></p>
    
    				<p><?php
    	echo sprintf(
    		/* translators: %s: link labeled 'making a donation' */
    		esc_html( __( 'If you enjoy using Contact Form 7 and find it useful, please consider %s.', 'contact-form-7' ) ),
    		wpcf7_link(
    			__( 'https://contactform7.com/donate/', 'contact-form-7' ),
    			__( 'making a donation', 'contact-form-7' )
    		)
    	);
    				?></p>
    
    				<p><?php echo esc_html( __( "Your donation will help encourage and support the plugin’s continued development and better user support.", 'contact-form-7' ) ); ?></p>
    			</div>
    <?php else: ?>
    			<div class="welcome-panel-column">
    				<h3><span class="dashicons dashicons-editor-help" aria-hidden="true"></span> <?php echo esc_html( __( "Before you cry over spilt mail…", 'contact-form-7' ) ); ?></h3>
    
    				<p><?php echo esc_html( __( "Contact Form 7 doesn’t store submitted messages anywhere. Therefore, you may lose important messages forever if your mail server has issues or you make a mistake in mail configuration.", 'contact-form-7' ) ); ?></p>
    
    				<p><?php
    	echo sprintf(
    		/* translators: %s: link labeled 'Flamingo' */
    		esc_html( __( 'Install a message storage plugin before this happens to you. %s saves all messages through contact forms into the database. Flamingo is a free WordPress plugin created by the same author as Contact Form 7.', 'contact-form-7' ) ),
    		wpcf7_link(
    			__( 'https://contactform7.com/save-submitted-messages-with-flamingo/', 'contact-form-7' ),
    			__( 'Flamingo', 'contact-form-7' )
    		)
    	);
    				?></p>
    			</div>
    <?php endif; ?>
    
    		</div>
    	</div>
    </div>
    <?php
    }
    
    add_action( 'wp_ajax_wpcf7-update-welcome-panel',
    	'wpcf7_admin_ajax_welcome_panel', 10, 0 );
    
    function wpcf7_admin_ajax_welcome_panel() {
    	check_ajax_referer( 'wpcf7-welcome-panel-nonce', 'welcomepanelnonce' );
    
    	$vers = get_user_meta( get_current_user_id(),
    		'wpcf7_hide_welcome_panel_on', true );
    
    	if ( empty( $vers ) or ! is_array( $vers ) ) {
    		$vers = array();
    	}
    
    	if ( empty( $_POST['visible'] ) ) {
    		$vers[] = wpcf7_version( 'only_major=1' );
    	}
    
    	$vers = array_unique( $vers );
    
    	update_user_meta( get_current_user_id(),
    		'wpcf7_hide_welcome_panel_on', $vers );
    
    	wp_die( 1 );
    }

    If you have the possibility, the easiest way to solve the problem is to upgrade your PHP version to 7.4 (probably 7.3 works too).

    It can usually be done though CPanel.

    Still a really bad error on their part. Many sites still run PHP 5.6.

    Just update PHP ver to 7.4.

Viewing 15 replies - 16 through 30 (of 36 total)
  • The topic ‘PHP Parse error: syntax error, unexpected ‘print’ (T_PRINT)’ is closed to new replies.