I have in fragment1 :
- Spinner categories.
 - RadioGroup type of ad.
 - ImageView where I get the image from gallery and I stock the path in variable path.
 
Fragment2 contains title of book, price.. and button back to fragment1.
    backToFrgFirst.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            FragmentTransaction transection = getFragmentManager().beginTransaction();
            AddBookPhotosFragment mfragment = new AddBookPhotosFragment();
            transection.replace(R.id.mainFrame, mfragment ).addToBackStack( "TAG" ).commit();
        }
    });
When I go back to fragment, the data is reset, and the choices of the user are not kept.
Update with code of fragment1:
public class AddBookPhotosFragment extends Fragment implements AdapterView.OnItemClickListener {
private static final String TAG = AddBookPhotosFragment.class.getSimpleName();
// Variable declared 
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
                         Bundle savedInstanceState) {
    final View rootView = inflater.inflate(R.layout.fragment_add_book_photos,
            container, false);
    auth = FirebaseAuth.getInstance();
    mDatabase = FirebaseDatabase.getInstance();
    myRef = mDatabase.getReference("categories");
    spinnerCat = (Spinner) rootView.findViewById(R.id.spinner_cat_book);
    radioGroup = (RadioGroup) rootView.findViewById(R.id.type_annonce_radio_btn);
    selectImage = (ImageView) rootView.findViewById(R.id.book_picture);
    nextbtn = (Button) rootView.findViewById(R.id.next_Button_frg_photo);
    myRef.addValueEventListener(new ValueEventListener() {
        @Override
        public void onDataChange(DataSnapshot dataSnapshot) {
            final List<String> catListBook = new ArrayList<String>();
            for (DataSnapshot snapshot : dataSnapshot.getChildren()) {
                Categoriesbook book = snapshot.getValue(Categoriesbook.class);
                String catBook = book.getNom_cat();
                catListBook.add(catBook);
            }
            ArrayAdapter<String> catAdapter = new ArrayAdapter<String>(getActivity(), android.R.layout.simple_spinner_item, catListBook);
            spinnerCat.setAdapter(catAdapter);
        }
        @Override
        public void onCancelled(DatabaseError databaseError) {
            System.out.println("The read failed: " + databaseError.getMessage());
        }
    });
    spinnerCat.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
        @Override
        public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
            catlivre = (String) parent.getItemAtPosition(position);
        }
        @Override
        public void onNothingSelected(AdapterView<?> parent) {
        }
    });
    radioGroup.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() {
        @Override
        public void onCheckedChanged(RadioGroup group, int checkedId) {
            radiobtn = (RadioButton) rootView.findViewById(checkedId);
            rdBtnText = (String) radiobtn.getText();
        }
    });
    selectImage.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            showFileChooser();
        }
    });
    nextbtn.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            FragmentTransaction transection = getFragmentManager().beginTransaction();
            AddBookInfosFragment mfragment = new AddBookInfosFragment();
            Bundle bundle = new Bundle();
            bundle.putString("catSelected", catlivre);
            bundle.putString("typeAnSelected", rdBtnText);
            bundle.putString("uRI", filePath.toString());
            mfragment.setArguments(bundle);
            transection.replace(R.id.mainFrame, mfragment).addToBackStack(TAG);
            transection.commit();
        }
    });
    return rootView;
}
private void showFileChooser() {
    Intent intent = new Intent();
    intent.setType("image/*");
    intent.setAction(Intent.ACTION_GET_CONTENT);
    startActivityForResult(Intent.createChooser(intent, "Select Picture"), PICK_IMAGE_REQUEST);
}
@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
    super.onActivityResult(requestCode, resultCode, data);
    if (requestCode == PICK_IMAGE_REQUEST && resultCode == getActivity().RESULT_OK && data != null && data.getData() != null) {
        filePath = data.getData();
        try {
            Bitmap bitmap = MediaStore.Images.Media.getBitmap(getActivity().getContentResolver(), filePath);
            selectImage.setImageBitmap(bitmap);
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}
}